【问题标题】:What can be the possible use case for finishActivity() [closed]finishActivity() 的可能用例是什么[关闭]
【发布时间】:2014-02-26 05:42:11
【问题描述】:

我已经知道Finish() and FinishActivity()。即

finish() 当您的活动完成并应该关闭时调用它。

finishActivity() 用于完成您之前使用startActivityForResult(Intent, int); 开始的另一个活动

我想用示例代码简要介绍一下。了解它的工作原理。

【问题讨论】:

  • 我想用示例代码简要介绍一下。了解它是如何工作的。

标签: android android-layout android-intent android-fragments


【解决方案1】:

finish() 当您的活动完成并应该关闭时调用它。 ActivityResult 会通过 onActivityResult() 传播回启动你的人。

finishActivity(int requestCode) 用于完成您之前使用 startActivityForResult(Intent, int); 开始的另一个活动;

编辑

就像如果你简单地写finish();那么它就会完成你当前的活动,但是当你使用finishActivity(1001)然后1001是你从startActivityForResult(intent, 1001);传递的请求代码所以它会完成您来自的那个活动

示例。

@Override 
        public boolean onKeyDown(int keyCode, KeyEvent event) { 
                // TODO Auto-generated method stub 
                if (keyCode == KeyEvent.KEYCODE_BACK) { 
                        finish(); 
                        finishActivity(107); 
                        Intent intent = new Intent(this, Menu.class); 
                        startActivity(inten); 
                        return true; 
                } 
                return false; 
        } 

所以上面的例子将完成你当前的活动,因为你写了finish();,也完成了你以前的活动,因为我们写了finishActivity(107);,我已经告诉你107是你从其他活动传递的代码.

假设您有 2 个活动(活动 A 和活动 B),主要活动 A 是开始活动。 Activity B 将在 Activity B 之上运行,并且是一个模糊视图。当我重定向到活动 B 时,你还没有完成活动 A。你正在像这样开始活动 B

startActivityForResult(intent, 107); 

所以在活动 B 中你有

@Override 
            public boolean onKeyDown(int keyCode, KeyEvent event) { 
                    // TODO Auto-generated method stub 
                    if (keyCode == KeyEvent.KEYCODE_BACK) { 
                            finish(); 
                            finishActivity(107); 
                            Intent intent = new Intent(this, Menu.class); 
                            startActivity(inten); 
                            return true; 
                    } 
                    return false; 
            } 

这将完成您的活动 A 和 B。

希望这简单明了。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-10
  • 2016-06-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多