【发布时间】:2014-02-22 15:50:09
【问题描述】:
我正在使用支持库 android.support.v7.app.actionbar,因为我想要 api 级别 8 及以上的操作栏
但是下面的句子给了我错误,比如将 mActionBar 更改为 ActionBar
mActionBar=getActionBar();
我想在其中使用ActionBar标签的FragmentActivity如下
import com.example.bottomtabadapter.TabPageAdapter;
import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBar.Tab;
import android.support.v7.app.ActionBarActivity;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.view.Menu;
public class TabFragmentActivity extends FragmentActivity implements ActionBar.TabListener{
private ViewPager mViewPager;
private ActionBar mActionBar;
private TabPageAdapter mAdapter;
private String[] tabs={"Chat","Groups","Contacts"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tab_fragment);
mViewPager=(ViewPager)findViewById(R.id.pager);
mActionBar=getActionBar(); // here is the error
mAdapter=new TabPageAdapter(getSupportFragmentManager());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.tab, menu);
return true;
}
@Override
public void onTabReselected(Tab arg0, FragmentTransaction arg1) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(Tab arg0, FragmentTransaction arg1) {
// TODO Auto-generated method stub
}
@Override
public void onTabUnselected(Tab arg0, FragmentTransaction arg1) {
// TODO Auto-generated method stub
}
}
【问题讨论】:
-
你扩展了activity还是tabactivity
-
我认为这不是运行时错误,而是编译时错误...来自支持库的 ActionBar != original ActionBar
-
如果您无法回答该问题,请不要为该问题降级
-
@Selvin 我认为这个问题不应该被标记为离题,因为最终它得到了解决。我确实同意,使用发布的 logcat 堆栈跟踪会更容易找到根本原因。
标签: android android-actionbar android-support-library