【问题标题】:how to get Activity View inside that activity?如何在该活动中获取活动视图?
【发布时间】:2010-11-11 07:11:58
【问题描述】:

我想用我之前的活动布局“LinearLyout”来展示我的下一个活动。但它不起作用。有人可以帮忙吗?

我将最后一个活动布局引用放在一个静态变量中的全局类中。我在下一个活动中的代码如下

公共 onCreate(){

查看视图 = findViewById(R.layout.topstory_detail_layout); 设置内容视图(视图); // 我的代码

Global.mainActity.contentViewLayout.removeAllViews(); Global.mainActity.contentViewLayout.addView(this.getWindow().getDecorView());

这里是例外

11-11 11:41:07.330:错误/AndroidRuntime(559):未捕获的处理程序:线程主因未捕获的异常而退出 11-11 11:41:07.460: ERROR/AndroidRuntime(559): java.lang.RuntimeException: view com.android.internal.policy.impl.PhoneWindow$DecorView@44c3cc70 被添加,但它已经有一个父级 11-11 11:41:07.460: 错误/AndroidRuntime(559): 在 android.view.View.assignParent(View.java:5721)

【问题讨论】:

    标签: android android-activity android-intent


    【解决方案1】:

    你能更好地解释一下什么是全局活动吗?

    顺便说一句,如果我了解您想要创建一个包含活动的活动组 http://developer.android.com/reference/android/app/ActivityGroup.html

    你可以阅读这里的内容

    http://www.mail-archive.com/android-developers@googlegroups.com/msg37528.html

    【讨论】:

    • 谢谢。是的,我知道了,在小组活动中使用 activitymange。
    【解决方案2】:

    不要在全局静态变量中存储任何与上下文相关的内容,这会导致内存泄漏。

    也许你应该用FLAG_ACTIVITY_CLEAR_TOP 标志开始你的第二个活动。在这种情况下,新活动将替代第一个活动。

    您也可以在 startActivity() 之后调用当前活动的 finish()。

    最后,您可能想使用ViewFlipper 来更改 Activity 的视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-26
      • 2012-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-16
      相关资源
      最近更新 更多