2013-06-10 8 views
52

पर इशारा श्रोता अक्षम करें मैं ड्रॉवरलेआउट के लिए इशारा पहचान को कैसे अक्षम कर सकता हूं? (बाएं से दाएं स्वाइप करें) और केवल नज़दीकी इशारा (दाएं से बाएं) को स्वीकार करें और केवल होम बटन के साथ दराज खोलें?DrawerLayout

उत्तर

125

यह मेरे लिए काम किया:

mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED); 

mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_OPEN); 

फिर, छोड़ दिया कड़ी चोट करने का अधिकार सक्षम करने के लिए, इस संसाधन की जाँच आप होम बटन टैप करके ड्रॉवर का विस्तार कर सकते हैं, और इसे खारिज करने के लिए दाएं से बाएं स्वाइप जेस्चर का उपयोग कर सकते हैं। हालांकि, बाएं से दाएं स्वाइप अब ट्रिगर नहीं किया गया है।

+16

इसे अनलॉक करने के लिए आप mDrawerLayout.setDrawerLockMode (DrawerLayout.LOCK_MODE_UNLOCKED) का उपयोग करें; –

+6

यह मेरे मामले में काम नहीं कर रहा है, अगर मैं ऊपर दिए गए समाधान के साथ दराज लेआउट सेट करता हूं तो भी मुझे हमेशा स्वाइप जेश्चर पर एक दराज मिलता है। –

+0

मुझे वही समस्या है। –

18

setDrawerLockMode() के लिए, इस कोड में लेकिन Android developer डॉक्स पर नहीं है: जैसे

/** 
* The drawer is unlocked. 
*/ 
public static final int LOCK_MODE_UNLOCKED = 0; 

/** 
* The drawer is locked closed. The user may not open it, though 
* the app may open it programmatically. 
*/ 
public static final int LOCK_MODE_LOCKED_CLOSED = 1; 

/** 
* The drawer is locked open. The user may not close it, though the app 
* may close it programmatically. 
*/ 
public static final int LOCK_MODE_LOCKED_OPEN = 2; 
+0

और यह अब देव डॉक्स पर दिखाई देता है: http://developer.android.com/reference/android/support/v4/widget/DrawerLayout.html#LOCK_MODE_LOCKED_CLOSED – greg7gkb

1

देखो मैं बग मिला। उदाहरण के लिए निर्धारित करते हैं:

android:layout_gravity="right" 

या

android:layout_gravity="left" 

दराज सामग्री के लिए और प्रयोग .setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED) सब ठीक हो जाएगा।

लेकिन अगर android:layout_gravity="left|center_vertical" या LOCK_MODE_LOCKED_CLOSED ऐसा कुछ काम नहीं करेगा।

+1

आप सही हैं। इसका कारण यहां @ ए - सी https://stackoverflow.com/questions/18413116/why-i-cant-lock-drawerlayout-with-layout-gravity/18413276#18413276 द्वारा वर्णित किया गया है – Tina

संबंधित मुद्दे