操作栏Sherlock一旦活动加载就消失

时间:2012-09-07 23:00:24

标签: android actionbarsherlock

当我从他们开始活动时,我的ActionBar标签正在消失。我可以看到活动,但标签不会出现。

我的SherlockFragmentActivity是 -

public class FragmentDemoActivity extends SherlockFragmentActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ActionBar bar = getSupportActionBar();
    bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    ActionBar.Tab tab1 = bar.newTab();
    ActionBar.Tab tab2 = bar.newTab();

    tab1.setText("Fragment A");
    tab2.setText("Fragment B");

    tab1.setTabListener(new MyTabListener());
    tab2.setTabListener(new MyTabListener());
    bar.addTab(tab1);
    bar.addTab(tab2);
}

private class MyTabListener implements ActionBar.TabListener
{

    @Override
    public void onTabSelected(Tab tab, FragmentTransaction ft) {
        if(tab.getPosition()==0)
        {
            CalendarViewActivity frag = new CalendarViewActivity();
            startActivity(new Intent(getApplicationContext(),CalendarViewActivity.class));
            //ft.replace(android.R.id.content, frag);

        }
        else
        {
            TestActivity frag = new TestActivity();
            //ft.replace(android.R.id.content, frag);
        }
    }

    @Override
    public void onTabUnselected(Tab tab, FragmentTransaction ft) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onTabReselected(Tab tab, FragmentTransaction ft) {
        // TODO Auto-generated method stub

    }

}

}

虽然我的Acitivity是一项正常的Android活动 -

public class CalendarViewActivity extends Activity

请帮助。

而我的

1 个答案:

答案 0 :(得分:1)

  

我可以看到活动,但标签不会出现。

当然不是。您没有在CalendarViewActivity上添加任何标签,部分原因是CalendarViewActivity只是常规Activity

如果您认为点击标签页应该将内容加载到FragmentDemoActivity,那么您就不应该从startActivity()调用TabListener。相反,您应该执行FragmentTransaction或以其他方式修改FragmentDemoActivity的用户界面。