2017-12-20 107 views
5

मैं एक gridlayoutmanager का इस्तेमाल किया है एक टीवी एप्लिकेशन लेआउट फ़ाइल सेबचें पहली पंक्ति और recyclerview gridlayoutmanager में पहले स्तंभ के स्क्रॉल

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#021257" 
android:orientation="vertical"> 

<HorizontalScrollView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:fillViewport="true"> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent"> 

     <android.support.v7.widget.RecyclerView 
      xmlns:app="http://schemas.android.com/apk/res-auto" 
      android:id="@+id/rvThumbnail" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="#021257" 
      android:orientation="vertical"/> 


    </LinearLayout> 
</HorizontalScrollView> 
</LinearLayout> 

तो

दृश्य संरचना (उन्मुखीकरण के लिए एक दो तरह से स्क्रॉल gridlayout बनाया गया ऊर्ध्वाधर) और कॉलम प्रदर्शित छवियों के लिए spancount 49 (24hrs * 2) +1 है। पहली पंक्तिसमय आधे घंटे स्लॉट में विभाजित और पहले कॉलमचैनलों प्रदर्शित करने के लिए है प्रदर्शित करने के लिए है, प्रत्येक चैनल अलग समय स्लॉट के तहत चल रहा अपने स्वयं के कार्यक्रमों होगा। अब जब मैंने ग्रिडलेआउट को दोनों तरीकों से स्क्रॉल करने के लिए हासिल किया है, तो अब मेरे पास दो और चीजें हैं।

Image of above description

1) जब क्षैतिज स्क्रॉल, चैनलों स्तंभ (प्रथम कॉलम) भी स्क्रॉल और इसलिए हो जाता है छिपा हो जाता है (यह खड़ी हालांकि स्क्रॉल करने के लिए, के बाद से वहाँ 20 चैनलों हो सकता है) है। अब मैं इस स्तंभ स्थिर वेन क्षैतिज स्क्रॉलिंग बनाने के लिए और आराम अन्य स्तंभों स्क्रॉल चाहिए सामान्य रूप से

2) जब खड़ी स्क्रॉल, समय पंक्ति (पहली पंक्ति) भी स्क्रॉल और इसलिए हो जाता है छिपा हो जाता है (यह क्षैतिज स्क्रॉल करने की जरूरत है हालांकि, चूंकि पंक्ति को 24 घंटे प्रदर्शित करना है)। अब मुझे यह पंक्ति स्थैतिक वेन स्क्रॉलिंग लंबवत बनाने की आवश्यकता है और बाकी पंक्तियों को सामान्य रूप से स्क्रॉल करना होगा।

क्या यह हासिल करना संभव है? मैं आपकी सहायता की सराहना

+0

आप की कोशिश की इस https://stackoverflow.com/a/26573338/5492047 –

+0

हाँ मैं कोशिश की है है। – DJphy

+0

समन्वयक लेआउट + लेआउट व्यवहार इस प्रकार के यूआई – Bhargav

उत्तर

6

संभव दृष्टिकोण को तीन पुनरावृत्ति देखने

लिस्टिंग

ख) समय के लिए क्षैतिज पुनरावृत्ति देखने चैनल लिस्टिंग

ग के लिए एक) कार्यक्षेत्र रीसायकल देखें) रीसायकल साथ जाने के लिए किया जाएगा डेटा

(डेटा के लिए इस्तेमाल किया रीसायकल देखें) ग्रिड पुनरावृत्ति देखने का उपयोग scrollChange श्रोता

के लिए ग्रिड लेआउट प्रबंधक के साथ दृश्य 0
/** 
* Use scroll values 
*/ 
public void setScroll() { 
    mDataRecycleView.setOnScrollChangeListener(new View.OnScrollChangeListener() { 
     @Override 
     public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) { 
      //you can now play on scroll value of this recycle view and change the scroll value of other recycle views. 

    // you can get your view here and also know the value of view so based on value you can handle it here so it's very easy. 
     } 
    }); 
} 

कोशिश करें और मुझे बताएं कि यह दृष्टिकोण आपके लिए काम करता है और कोई प्रश्न पूछता है तो नीचे टिप्पणी करें ताकि हम आपकी समस्या का समाधान कर सकें।

+0

का आपका समाधान है, मैंने यह किया है, लक्ष्य रीसाइक्लिंगव्यू स्क्रॉल misbehaves – DJphy

+0

यह समस्या हल करने का एक अच्छा तरीका है। –

2

TableView गीथब से परियोजना का प्रयास करें।

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

इस परियोजना से अवधारणा प्राप्त करें और आप जो चाहते हैं उसे संशोधित करें।

आशा इस व्याख्या में मदद करता है आप :)

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