9

TabActivityは非推奨になっているようです。フラグメントを使用する必要があります。

標準のアクティビティを使用しようとしましたが、getTabHostを呼び出すことができませんでした。

したがって、フラグメントを使用する必要があるようです。しかし、私はこれがどのように機能するか少し混乱しています。

フラグメントはアクティビティではないので、マニフェストファイルにはないことを理解していますか?

だから私はフラグメントでstartActivityを行うことができないと思いますか?

tabHostとFragmentsを説明する良い例を知っている人はいますか?私が見つけたすべての例とチュートリアルはtabactivityのみを使用しています。

前もって感謝します

4

5 に答える 5

0

選択した実現を使用する際の問題だと思います。Android SDK には、ActivityList、TabActivity、ActionBarActivity など、View の多くのバリアントが含まれています。理由を尋ねるべきですか?

  • 新しいマテリアルのタブとリストの別の例を見てください。アプリケーションには ToolbarLayout などのメイン ヘッダーが含まれており、これにはツールバーのさまざまな状態が含まれており、TabLayout やその他のクールなものを追加できます。

あなたの質問に答えてください - カスタマイズされた強力なビュー要素を使用してから、メイン アクション ビュー (アクティビティ) のいくつかの実装を使用することをお勧めします。この理由は、要素のアクション仕様に目を向けると、さらに明確になります。ビューの初期化でアクティビティを実行する必要はありません。

于 2016-06-22T07:09:47.540 に答える
0

それに直面しよう。フラグメントは未来です。そして、私たちはそれらを使用するように導かれています。

次のチュートリアルは非常に有益であり、「フラグメントを含むタブに関する質問」のすべてに答えてくれることを願っています。

于 2016-06-22T06:44:58.450 に答える
0

今日、Android はそれらのための素晴らしいチュートリアルを手に入れました。タブを使用したスワイプ ビューの作成から始める

これは、タブを作成する方法の小さなスナップショットです

@Override
public void onCreate(Bundle savedInstanceState) {
    final ActionBar actionBar = getActionBar();
    ...

    // Specify that tabs should be displayed in the action bar.
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    // Create a tab listener that is called when the user changes tabs.
    ActionBar.TabListener tabListener = new ActionBar.TabListener() {
        public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
            // show the given tab
        }

        public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {
            // hide the given tab
        }

        public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {
            // probably ignore this event
        }
    };

    // Add 3 tabs, specifying the tab's text and TabListener
    for (int i = 0; i < 3; i++) {
        actionBar.addTab(
                actionBar.newTab()
                        .setText("Tab " + (i + 1))
                        .setTabListener(tabListener));
    }
}
于 2016-01-17T11:32:32.723 に答える