6

काम नहीं कर रहा है जब मैंने ListView या Recycler के अंदर एडिटटेक्स्ट को स्पर्श किया है तो सॉफ्ट कीबोर्ड दिखा रहा है। फिर मैंने कीबोर्ड पर अगले बटन पर क्लिक किया और फोकस अगले एडिटटेक्स्ट में बदल गया। आखिरी संपादन एडिटटेक्स्ट के बाद, फोकस अगले एडिटटेक्स्ट में बदल रहा है लेकिन ListView या RecyclerView अंदर स्क्रॉल नहीं कर रहा है और स्टेटस बार के नीचे आने वाली सभी स्क्रीन अगले कीबोर्ड पर क्लिक की गई है।जब सूचीव्यू या रीसाइक्लिंग व्यू के अंदर एडिटटेक्स्ट पर ध्यान केंद्रित किया गया, तो कुंजीपटल दिखा रहा है लेकिन स्क्रॉलिंग

निम्न XML जो इस स्क्रीन के लिए उपयोग कर रहा है:

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"> 
     <include 
      android:id="@+id/MainToolbar" 
      layout="@layout/toolbar" /> 
     <include 
      android:id="@+id/llHeaderItem" 
      layout="@layout/TaskShelfShareHeaderItem" /> 
     <ListView 
      android:id="@+id/lwShelfShare" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:stackFromBottom="true" 
      android:transcriptMode="normal" /> 
    </LinearLayout> 

Screen cast

उत्तर

5

मैं इसे बाहर इस तरह लगा। आशा करता हूँ की ये काम करेगा।

mEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { 

    @Override 
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
     RecyclerView recyclerView = getRecyclerView(); 
     if (recyclerView != null) { 
      int position = getLayoutPosition(); 
      RecyclerView.ViewHolder viewHolder = recyclerView.findViewHolderForLayoutPosition(position + 1); 
      if (viewHolder == null) { 
       recyclerView.smoothScrollToPosition(position + 1); 
       return true; 
      } 
     } 
     return false; 
    } 
}); 
+0

'getRecyclerView();' नहीं –

+0

पाया @PratikButani आप 'getRecyclerView()' लागू करने के लिए की है। वह सिर्फ यह इंगित कर रहा है कि आपको अपने रीसाइक्लर व्यू – Antonio

+0

के संदर्भ की आवश्यकता है एडाप्टर क्लास में 'getRecyclerView();' कैसे प्राप्त करें? @Ivan –

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

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