Tôi đang sử dụng NavigationDrawer được tạo bởi mẫu (khi bắt đầu một dự án mới). Tôi đang cố gắng để có được khả năng tương thích Material Design vì vậy tôi đang sử dụng AppCompat v7. Tôi đi theo these instructions để thiết lập một Toolbar như ActionBar tôi (tức là sử dụng setSupportActionBar trên thanh công cụ của tôi) và tôi nhận được một NPE trong NavigationDrawerFragment tôi tại (bên onCreateView)NavigationDrawerFragment không hoạt động với Thanh công cụ AppCompat
mDrawerListView.setAdapter(new ArrayAdapter<String>(
getActionBar().getThemedContext(),
android.R.layout.simple_list_item_activated_1,
android.R.id.text1, ...
bây giờ tôi nghi ngờ vấn đề là với getActionBar() phương pháp bên trong đoạn:
private ActionBar getActionBar() {
return ((ActionBarActivity) getActivity()).getSupportActionBar();
}
nhưng tôi không có ý tưởng tại sao - tôi gọi setSupportActionBar (thanh công cụ) trong onCreate Hoạt động trước khi kêu gọi thiết lập() trên NavigationDrawerFragment ...
tôi f bất cứ ai có một đầu mối tại sao điều này xảy ra xin vui lòng giúp đỡ!
bạn có thể vui lòng xây dựng? – bernlim
@bernlim Chắc chắn. Vấn đề là khi hoạt động của tôi đã được tạo ra, phương thức onCreateView của đoạn được gọi trước onCreate của hoạt động. NPE phát sinh trong onCreateView của fragment bởi vì tôi cố gắng để có được thanh hành động là null tại thời điểm đó vì onCreate của hoạt động chưa được gọi và ActionBar chưa được khởi tạo/set/created. Điều đó có hợp lý không? – Djordje