如何设置片段的布局?

时间:2013-07-31 11:57:32

标签: android

这是一个多重活动>> 我正在尝试为每个选项卡设置布局,但它不起作用! 它只是在两个标签中都没有显示任何内容!

这是代码

 public class Game extends Activity { 

    public static Context appContext;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game);

        //ActionBar gets initiated
        ActionBar actionbar = getActionBar();
       //Tell the ActionBar we want to use Tabs.
        actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
       //initiating both tabs and set text to it.
        ActionBar.Tab roundTab = actionbar.newTab().setText("Round 55");
        ActionBar.Tab scoreTab = actionbar.newTab().setText("Score 55");

      //create the two fragments we want to use for display content
        Fragment roundFragment = new roundFragment();
        Fragment scoreFragment = new scoreFragment();

     //set the Tab listener. Now we can listen for clicks.
        roundTab.setTabListener(new MyTabsListener(roundFragment));
        scoreTab.setTabListener(new MyTabsListener(scoreFragment));
      //add the two tabs to the actionbar
        actionbar.addTab(roundTab);
        actionbar.addTab(scoreTab);
    }



    class MyTabsListener implements ActionBar.TabListener {
        public Fragment fragment;

        public MyTabsListener(Fragment fragment) {
            this.fragment = fragment;
        }


        public void onTabReselected(Tab tab, FragmentTransaction ft) {
        }

        public void onTabSelected(Tab tab, FragmentTransaction ft) {

        }

        public void onTabUnselected(Tab tab, FragmentTransaction ft) {
        }

    }

    public class roundFragment extends Fragment {

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
             // Inflate the layout for this fragment
            return inflater.inflate(R.layout.round, container, false);
        }

    }

    public class scoreFragment extends Fragment {

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
             // Inflate the layout for this fragment
            return inflater.inflate(R.layout.score, container, false);
        }

    }


 }

2 个答案:

答案 0 :(得分:0)

您的onTabSelected()为空。这就是为什么它在选择上没有显示任何内容。

将此代码添加到onTabSelected()的{​​{1}}。

MyTabsListener

答案 1 :(得分:-1)

这不是这样做的方式,而且似乎过于复杂......对于带有Tabs的UI,我建议您使用ViewPagerIndicator库,它是众所周知的,可靠且易于使用。

相关问题