如何在活动中获取活动视图?

时间:2010-11-11 07:11:58

标签: android android-activity android-intent

我希望使用之前的活动布局“LinearLyout”显示我的下一个活动。但它没有用。任何人都可以帮忙吗?

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

  

public onCreate(){

     

View view = findViewById(R.layout.topstory_detail_layout);   的setContentView(视图);   //我的代码

     

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

这是例外

  

11-11 11:41:07.330:ERROR / 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:ERROR / AndroidRuntime(559):在android.view.View.assignParent(View.java:5721)

2 个答案:

答案 0 :(得分:0)

你能更好地解释什么是全球活动?

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

你可以阅读这里的内容

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

答案 1 :(得分:0)

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

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

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

最后,您可能希望使用ViewFlipper来更改活动视图。