0

TabHost ウィジェットを試しています。TabActivity が廃止されたことに気づきませんでした。アクティビティを実行しているときに、TabHost を実際に画面に表示するのに問題があります。現在、私の XML ファイルには次のものが含まれています。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<TabHost
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </TabWidget>

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <LinearLayout
                android:id="@+id/tab1"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
            </LinearLayout>

            <LinearLayout
                android:id="@+id/tab2"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
            </LinearLayout>

            <LinearLayout
                android:id="@+id/tab3"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
            </LinearLayout>
        </FrameLayout>
    </LinearLayout>
</TabHost>

そして私の MainActivity.java には以下が含まれています:

public class MainActivity extends Activity {

TabHost myTabBar;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

TabHost を画面に表示するにはどうすればよいですか? TabHost を Google で検索するたびに、すべてのチュートリアルで TabActivity の拡張が行われます。

ありがとう。

編集:このようなことをするとき、私は正しい軌道に乗っていますか?

myTabBar = (TabHost)findViewById(android.R.id.tabhost);
    myTabBar.setup();
4

1 に答える 1

0

タブでのアクティビティは非推奨になり、Googleはこれを行うのは悪い考えであることに同意します。タブのコンテンツとしてビューを使用することを検討する必要があります。ここでは、役立つリソースを見つけることができるCommonsWareブックの例です。

于 2013-01-10T22:04:10.333 に答える