2014-11-20 19 views
29

parçasında bir araç çubuğu olarak ayarla Araç çubuğumu bir araç çubuğu olarak ayarlamak istiyorum, ancak araç çubuğunuz bir düzen öğesi olduğu için düzeninizde olması gerekiyor. Şimdi benim düzenim parçamda. Araç çubuğunu

benim düzeninde araç çubuğunu eklendi ve benim fragmanında diyoruz:

//Toolbar 
Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar); 

Ben başlık ayarlayabilirsiniz vb ama şimdi istiyorum, çünkü bu bir İşlem Çubuğu gibi tepki istiyorum çünkü çalışır bunu aslında sahip olmak.

Bir İşlem Çubuğu için araç çubuğunu değiştirmek zorunda yapmak için (doğru) setDisplayHomeAsUpEnabled:

kimse beni almak için yardımcı olabilir

...

setSupportActionBar(toolbar); 

benim fragmanında çalışmıyor benim araç çubuğunda bir parça içinde bir actionbar olarak çalışmak.

cevap

39

Şimdi ActionBarActivity böylece getActivity() ilk AppCompatActivity için aktivite döküm gerekir kullanımdan kaldırıldı. İşte bir örnek:

((AppCompatActivity) getActivity()).getSupportActionBar().setSubtitle(); 

Eğer getActivity() bir FragmentActivity döndürür ve bir AppCompatActivity

15

ActionBar bir Activity özelliğidir. Belirli bir parçadan bir araç çubuğunu sahiplik Faaliyetinin ActionBar'ı olarak ayarlamak isterseniz, parçanın (Fragment.getActivity()) sahibi olan Aktiviteyi alın ve ActionBar özelliğini ayarlayın. Ardından, geri/geri düğmesini almak için araç çubuğunuzu ActionBar olarak ayarladıktan sonra ActionBar'da başlayacağınız bahsettiğiniz aynı setDisplayHomeAsUpEnabled yöntemini juse kullanın.

Uygulamanızın bu Etkinlik içinde birden fazla parçası varsa, bunu dikkatli bir şekilde yönetmek zorunda kalacaksınız.

+0

Sadece bu yüzden gezinmeye kullanmak istiyorum Bu yüzden araç çubuğumdan yapılmış bir actionbar'a ihtiyacım var. ActionBar özelliğinin bana ve örneğe nasıl izin verebileceğini nasıl ayarlayabilirim? – Laurenswuyts

+0

Neden araç çubuğunuzu ana etkinliğinize koymuyorsunuz ve bu şekilde setSupportActionBar yöntemini –

+0

kullanabiliyorsunuz çünkü parçaları kullanıyorum ve düzenimi etkinliklerimde değil, parçalarımda ayarladım. Bu nedenle, etkinliğim araç çubuğunu – Laurenswuyts

7

Kullanım

((ActionBarActivity) getActivity()).getSupportActionBar().setSubtitle("Your Title"); 
+0

Bu, bir NullPointerException döndürüyor. – Machado

+5

Almadan önce ayarlamanız gerekir. (bu tekerlemeler) – notdrone

25

deneyin gerektiğinden midir döküm zorunda nedeni:

((AppCompatActivity)getActivity()).setSupportActionBar(toolbar); 
İlgili konular