我有一个带有2个标签的应用,第一个是列表视图,第二个我正在尝试制作TextView。问题是我不知道如何让TextView显示出来。 listview正在运行,但我根本无法在TextView上获得任何内容。我尝试使用Hello,World尝试使用文本进入选项卡,但我无法弄明白。
我的带有TabWidget的main.xml部分如下所示:
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/itemlist" />
<TextView
android:id="@+id/HelloAndroid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</FrameLayout>
使用mTabHost代码
在java文件上使用ListView TabHost mTabHost = getTabHost();
mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Answer").setContent(R.id.itemlist));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(R.id.HelloAndroid));
mTabHost.setCurrentTab(0);
}
TextView位于另一个名为HelloAndroid.java的文件中,代码如下:
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android");
setContentView(tv);
}
}
如何修复它以便第二个选项卡显示示例文本? 谢谢!
答案 0 :(得分:2)
如果我理解正确,您希望将HelloAndroid活动显示为第二个标签的内容。如果我是对的,而不是这个:
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(R.id.HelloAndroid));
你应该这样称呼:
Intent i = new Intent(this, HelloAndroid.class);
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(i));
但是你必须记住,HelloAndroid活动与布局文件中的TextView没有任何共同之处。 因此,最好不要将活动设置为选项卡内容,而是更改布局文件中文本视图的值。
PS。请记住将HelloAndroid活动放到Manifest.xml