【问题标题】:Handle Activity Finishing Event In Xamarin.Android在 Xamarin.Android 中处理活动完成事件
【发布时间】:2014-09-29 09:25:40
【问题描述】:

Xamarin.android 中有类似FormClosingEvent 的东西吗?

我有两个活动 - ABB 正在保存一些数据,并在单击按钮时从 A 调用。我在A 中有数据列表,并希望在B 活动完成后自动更新它。

有什么建议吗?

【问题讨论】:

    标签: c# events xamarin xamarin.android


    【解决方案1】:

    听起来您想通过以下方式将StartActivityForResult 与 Activity A 一起使用来启动 Activity B

    var myIntent = new Intent (this, typeof(ActivityB));
    StartActivityForResult (myIntent, 0);
    

    ActivityA 还应覆盖 OnActivityResult 等待响应 Activity B 的响应代码并根据需要进行更新。

    protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
    {
      base.OnActivityResult(requestCode, resultCode, data);
      if (resultCode == Result.Ok) {
         // Do whatever needs to be done in A 
      }
    }
    

    这在Xamarin's Android documentation中都有很好的记录

    【讨论】:

    • 好的,现在跟进问题:如果我有ABC 活动怎么办。 A 正在调用BB 正在调用C,我想为CA 活动做同样的事情。我应该将OK 结果从C 发送到B,然后从B 发送到A,还是可以直接从C 发送到A
    • 没关系。我找到了非常简单的解决方案。我可以在OnResume() 方法中做我想做的事。 StartActivityForResult 用于将数据发送回第一个活动。而且我没有东西要寄回去。我只需要在第二个活动关闭后调用一个方法,所以OnResume 是我需要的。还是谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多