0

私はAndroidとJavaプログラミングに非常に慣れていません。私がやろうとしているのは、いくつかのタブ(最終的には11)を備えたアクションバーを取得することです。ActionBar Sherlockをインストールできましたが、アクションバーにタブを追加するのに行き詰まりました。私が読んだことから、タブごとに個別のフラグメントを追加する必要があるように見えます。それを機能させる簡単な解決策はありますか?

4

1 に答える 1

0

アクションバーのタブごとにフラグメントを設定する必要はありません。xmlでメニューを定義し、アクティビティでメニューを使用してアクションバーを初期化するのと同じくらい簡単なはずです。

たとえば、menu.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/my_menu_item"
          android:showAsAction="always|withText"
          android:title="Tab name here"/>
</menu>

次に、アクティビティでonCreateOptionsMenuをオーバーライドします。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getSupportMenuInflater().inflate(R.menu.my_menu, menu);
    return super.onCreateOptionsMenu(menu);
}

次に、タブが押されたときに応答するようにonOptionItemSelectedをオーバーライドする必要があります。

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.my_menu_item:
                    //do something
        }
        return super.onOptionsItemSelected(item);
    }
于 2012-07-25T13:15:15.217 に答える