没有更多的允许从右侧导航抽屉打开的抽屉布局 [英] no more allow open Drawer layout from right side in navigation drawer
问题描述
我想从右侧打开抽屉,但当swite它的工作原理,但是当我在操作栏中点击切换按钮,它强制关闭并给予错误否重力LEFT发现抽屉里查看
I want to open drawer from right side, but when swite it works but when i click on toggle button in action bar it force close and give error that "No drawer view found with gravity LEFT"
请帮忙...
我想补充的布局像
<ListView
android:layout_gravity="right|end"
android:id="@+id/left_drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:divider="#ccc"
android:dividerHeight="1dp"
/>
java.lang.IllegalArgumentException:如果没有重力LEFT发现抽屉里查看 在android.support.v4.widget.DrawerLayout.openDrawer(DrawerLayout.java:1319) 在android.support.v7.app.ActionBarDrawerToggle.toggle(ActionBarDrawerToggle.java:290) 在android.support.v7.app.ActionBarDrawerToggle.access $ 100(ActionBarDrawerToggle.java:64) 在android.support.v7.app.ActionBarDrawerToggle $ 1.onClick(ActionBarDrawerToggle.java:200) 在android.view.View.performClick(View.java:4084) 在android.view.View $ PerformClick.run(View.java:16966) 在android.os.Handler.handleCallback(Handler.java:615) 在android.os.Handler.dispatchMessage(Handler.java:92) 在android.os.Looper.loop(Looper.java:137) 在android.app.ActivityThread.main(ActivityThread.java:4745) 在java.lang.reflect.Method.invokeNative(本机方法) 在java.lang.reflect.Method.invoke(Method.java:511) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:786) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 在dalvik.system.NativeStart.main(本机方法)
java.lang.IllegalArgumentException: No drawer view found with gravity LEFT at android.support.v4.widget.DrawerLayout.openDrawer(DrawerLayout.java:1319) at android.support.v7.app.ActionBarDrawerToggle.toggle(ActionBarDrawerToggle.java:290) at android.support.v7.app.ActionBarDrawerToggle.access$100(ActionBarDrawerToggle.java:64) at android.support.v7.app.ActionBarDrawerToggle$1.onClick(ActionBarDrawerToggle.java:200) at android.view.View.performClick(View.java:4084) at android.view.View$PerformClick.run(View.java:16966) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4745) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) at dalvik.system.NativeStart.main(Native Method)
推荐答案
我有同样的问题,我解决它波纹管:
i have same issue, and i fix it bellow:
toolbar = (Toolbar) findViewById(R.id.tool_bar);
Drawer = (DrawerLayout) findViewById(R.id.DrawerLayout);
mDrawerToggle = new ActionBarDrawerToggle(this,Drawer,toolbar,R.string.openDrawer,R.string.closeDrawer){
@Override
public void onDrawerOpened(View drawerView) {
super.onDrawerOpened(drawerView);
}
@Override
public void onDrawerClosed(View drawerView) {
super.onDrawerClosed(drawerView);
}
}; // Drawer Toggle Object Made
Drawer.setDrawerListener(mDrawerToggle);
mDrawerToggle.syncState();
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (Drawer.isDrawerOpen(Gravity.RIGHT)) {
Drawer.closeDrawer(Gravity.RIGHT);
} else {
Drawer.openDrawer(Gravity.RIGHT);
}
}
});
是的,这是工作,我修复5小时这个bug :(但我很开心的时候解决这个问题。^^ 感谢和放大器;好运气
yes, it's work, i'm fix this bug in 5hour :( but i'm very happy when resolve it. ^^ thanks & good luck
这篇关于没有更多的允许从右侧导航抽屉打开的抽屉布局的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!