मैं नेविगेशन ड्रॉर और इसलिए नहीं कर सकते उपयोग के लिए एक Fragement उपयोग कर रहा हूँ syncStateहैम्बर्गर चिह्न मार्गदर्शक ड्रॉवर टुकड़ा में प्रदर्शित नहीं करता है
public class NavigationDrawerFragment extends Fragment{
....
avctivityCreated पर syncState() कॉलिंग
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
// Indicate that this fragment would like to influence the set of actions in the action bar.
setHasOptionsMenu(true);
mDrawerToggle.syncState();
}
का उपयोग कॉल करने के लिए onPostCreated आइकन के लिए ic_drawer
public void setUp(int fragmentId, DrawerLayout drawerLayout) {
mFragmentContainerView = getActivity().findViewById(fragmentId);
mDrawerLayout = drawerLayout;
// set a custom shadow that overlays the main content when the drawer opens
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
// set up the drawer's list view with items and click listener
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeButtonEnabled(true);
// ActionBarDrawerToggle ties together the the proper interactions
// between the navigation drawer and the action bar app icon.
mDrawerToggle = new ActionBarDrawerToggle(
getActivity(), /* host Activity */
mDrawerLayout, /* DrawerLayout object */
R.drawable.ic_drawer, /* nav drawer image to replace 'Up' caret */
R.string.navigation_drawer_open, /* "open drawer" description for accessibility */
R.string.navigation_drawer_close /* "close drawer" description for accessibility */
) {
@Override
public void onDrawerClosed(View drawerView) {
super.onDrawerClosed(drawerView);
if (!isAdded()) {
return;
}
getActivity().supportInvalidateOptionsMenu(); // calls onPrepareOptionsMenu()
}
@Override
public void onDrawerOpened(View drawerView) {
super.onDrawerOpened(drawerView);
if (!isAdded()) {
return;
}
if (!mUserLearnedDrawer) {
// The user manually opened the drawer; store this flag to prevent auto-showing
// the navigation drawer automatically in the future.
mUserLearnedDrawer = true;
SharedPreferences sp = PreferenceManager
.getDefaultSharedPreferences(getActivity());
sp.edit().putBoolean(PREF_USER_LEARNED_DRAWER, true).apply();
}
getActivity().supportInvalidateOptionsMenu(); // calls onPrepareOptionsMenu()
}
};
गलत क्या पता नहीं लगा सकता है। कृपया
मैं android.support.v7 उपयोग कर रहा हूँ यह होना चाहिए था। app.ActionBarDrawerToggle लेकिन कोई भाग्य कोई विचार नहीं है? – Suchith
@ सुचिथ मुझे सहेजने की समस्या हो रही थी, मैं पोस्टस्टेट (गलत बंडल सहेजे गए इंस्टेंटस्टेट, पर्सिस्टेबलबंडल पर्सिस्टेंटस्टेट) पर गलत सार्वजनिक शून्य को ओवरराइड कर रहा था, इसे पोस्टस्टेट (बंडल सेव किया गया इंस्टेंसस्टेट) पर सुरक्षित रखा जाना चाहिए – aglour
यह मेरा काम नहीं करता है हालांकि मेरा कोड और तर्क बहुत समान है सवाल के लिए। लेकिन मैं इस लाइन अंतर है: 'mActionBarDrawerToggle = नए ActionBarDrawerToggle (getActivity(), mDrawerLayout, उपकरण पट्टी, R.string.navigation_drawer_open, R.string.navigation_drawer_item_close)' – blueware