当我从他们开始活动时,我的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
请帮助。
而我的
答案 0 :(得分:1)
我可以看到活动,但标签不会出现。
当然不是。您没有在CalendarViewActivity
上添加任何标签,部分原因是CalendarViewActivity
只是常规Activity
。
如果您认为点击标签页应该将内容加载到FragmentDemoActivity
,那么您就不应该从startActivity()
调用TabListener
。相反,您应该执行FragmentTransaction
或以其他方式修改FragmentDemoActivity
的用户界面。