2016-01-21 69 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()