活动setContent()到另一个布局文件

时间:2012-12-10 17:23:29

标签: android

我的activity_main是我活动中的默认布局,我有framelayout显示片段白色不同的布局,是否可以将不同的布局textview连接到我的活动的setText()?如何从活动连接到此片段xml布局?

activity_main
   frameLayout
      fragment 1 xml
      fragment 2 xml
   /frameLayout

Activit.java

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    dirShow("a");
}


void dirShow(String s) {
    setContentView(R.layout.fragment1);
    textPath = (TextView) findViewById(R.id.path_text);
    textPath.setText(s);
}

2 个答案:

答案 0 :(得分:2)

您不应该在活动中多次调用setContentView。内容视图是整个活动布局。如果要更改布局,正确的方法是更改​​片段或活动,并让新活动或片段显示新布局。

如果您不想更改布局,只需将所需的TextView放在您设置的第一个布局中即可。发布您的布局文件并告诉我们您要做的事情可能会让我们帮助您实现您想要的目标。

编辑: 如果我正确理解您更新的问题,那么您使用的是Fragments。如果是这种情况,请调用Fragments onCreateView()函数中的dirShow()函数,而不是活动的onCreate()函数。

如果您在问题中错误地使用了术语片段,我建议您切换到使用它们。

答案 1 :(得分:0)

您希望使用include标记将另一个xml包含到主xml中,并根据需要在textview上设置文本。