3

我想创建一个应用程序,它具有带有 3 个不同片段的操作栏(v7 appcompat)下拉导航。第一个片段是带有标签的列表片段,第二个是常规片段,最后一个是网格视图。我正在使用片段事务来替换框架布局中的片段。

我的问题是如何制作第一个 - 带有标签的列表片段。我想我必须使用视图寻呼机,但为此你需要 Fragment Activity?是否可以将选项卡添加到实际的操作栏?到目前为止,这是我的代码:

public class MainActivity extends ActionBarActivity {

    ActionBar actionBar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        actionBar = getSupportActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
        SpinnerAdapter spinnerAdapter = ArrayAdapter.createFromResource(this,
                R.array.action_list,
                android.R.layout.simple_spinner_dropdown_item);
        actionBar.setListNavigationCallbacks(spinnerAdapter,
                onNavigationListener);
    }

    OnNavigationListener onNavigationListener = new OnNavigationListener() {

        @Override
        public boolean onNavigationItemSelected(int position, long arg1) {
            // TODO Auto-generated method stub
            android.support.v4.app.Fragment fragment = null;
            FragmentTransaction fragmentTransaction = getSupportFragmentManager()
                    .beginTransaction();
            switch (position) {
            case 0:
                fragment = new android.support.v4.app.Fragment();
                break;

            case 1:
                fragment = new android.support.v4.app.Fragment();
                break;

            case 2:
                fragment = new android.support.v4.app.Fragment();
                break;

            default:
                break;
            }
            fragmentTransaction.replace(R.id.framelayout, fragment);
            fragmentTransaction.commit();
            return true;
        }
    };

忽略 switch-case 中创建新片段的代码,它们都是相同的。谢谢!

4

0 回答 0