2016-01-21 70 views
0

我有一个活动getActionBar返回null

和我已经加入

setSupportActionBar(toolbar); 

我想显示操作栏上的主页按钮。主页按钮是从android预定义的。

而且我调用此方法

getActionBar().setDisplayHomeAsUpEnabled(true); 

但是当我运行的应用程序,它给出了getActionBar retured null

活动的完整代码如下

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 

    setSupportActionBar(toolbar); 


    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
    fab.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
        . setAction("Action", null).show(); 
     } 
    }); 



    getActionBar().setDisplayHomeAsUpEnabled(true); 

为什么getActionBar返回空值?那是我的问题。

+1

您需要使用'getSupportActionBar()' 方法。 –

回答

0

使用在活动

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

使用的片段

((ActionBarActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

,而不是

getActionBar().setDisplayHomeAsUpEnabled(true); 
+0

在活动上我使用'ViewPager',我在片段上使用setDisplayHomeAsUpEnabled。那我该怎么做呢? – Alex

1

你应该尝试getSupportActionBar()