0

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

activity_main
   frameLayout
      fragment 1 xml
      fragment 2 xml
   /frameLayout

活动.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);
}
4

2 回答 2

2

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

如果您不尝试更改布局,则只需将所需的 TextView 放在您设置的第一个布局中。发布您的布局文件并告诉我们您正在尝试做什么可能会让我们帮助您实现您想要的。

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

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

于 2012-12-10T17:33:22.993 回答
0

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

于 2012-12-10T17:28:09.677 回答