2016-04-23 9 views
5

मेरे पास मेरे ऐप में एक रीसाइक्लिंग व्यू है और यह डेटा प्रदर्शित करता है। मैं RecyclerView के उपयोगकर्ता स्पर्श घटनाओं को अक्षम करना चाहता हूं। मैंने नीचे दिए गए कोड की कोशिश की है लेकिन यह काम नहीं करता है।रीसाइक्लिंग व्यू के अक्षम स्पर्श ईवेंट (उपयोगकर्ता स्पर्श को रोकने के लिए)?

recyclerView.setOnTouchListener(new View.OnTouchListener() { 
    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
     return false; 
    } 
}); 

कृपया मेरी मदद करें।

+0

आप प्रत्येक आइटम पर स्पर्श घटना के लिए यह जांच कर सकते हैं ओवरराइड कर सकते हैं। http://developer.android.com/reference/android/support/v7/widget/RecyclerView.OnItemTouchListener.html – androidnoobdev

+0

मैं रीसाइक्लर व्यू का विस्तार करूंगा और हमेशा टच लौटने के लिए ऑन टच और ऑन इंटरसेप्ट टचवेन्ट को ओवरराइड कर दूंगा। –

उत्तर

4

मैं एक ऐसी ही उपयोग के मामले था कुछ दिन पहले और इस सवाल पर अभी ठोकर खाई के रूप में:
आप अपने RecyclerView के लिए या तो

जोड़ सकते हैं ।

RecyclerView.SimpleOnItemTouchListener का उपयोग कर उदाहरण:

recyclerView.addOnItemTouchListener(new RecyclerView.SimpleOnItemTouchListener() { 
    @Override 
    public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) { 
     // true: consume touch event 
     // false: dispatch touch event 
     return true; 
    } 
}); 

मैं स्पर्श घटना का सेवन किया, जबकि मेरी SwipeRefreshLayoutswipeLayout.isRefreshing() पूछताछ की पृष्ठभूमि काम कर रहा था।

0

आप LinearLayoutManager canScrollHorizontally विधि

getRecyclerView().setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false) { 
    @Override 
    public boolean canScrollHorizontally() { 
     return false; 
    } 
}); 
संबंधित मुद्दे