2012-11-24 13 views
5
<GridView 
android:id="@+id/gridView1" 
android:layout_width="wrap_content" 
android:layout_height="match_parent" 
android:columnWidth="100dip" 
android:numColumns="8" 
android:scrollbarStyle="insideOverlay" 
android:scrollbars="vertical|horizontal" 
android:stretchMode="none" > 
</GridView> 

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

<HorizontalScrollView 
     android:id="@+id/horizontalScrollView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <GridView 
      android:id="@+id/gridView1" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:columnWidth="100dip" 
      android:numColumns="8" 
      android:scrollbarStyle="insideOverlay" 
      android:scrollbars="vertical|horizontal" 
      android:stretchMode="none" > 
     </GridView> 

    </HorizontalScrollView> 

भी बदतर के रूप में क्षैतिज स्क्रॉल देखें तहत gridview रखकर इसे ठीक करने की कोशिश की, यह gridview की और निश्चित रूप से केवल एक कॉलम को प्रदर्शित करता है, वहाँ कोई क्षैतिज स्क्रॉलबार है।

मैं इसे कैसे ठीक कर सकता हूं?

+2

में दोनों horizonal और खड़ी scroolview इस्तेमाल किया है। 'क्षैतिजस्कोल दृश्य 'के अंदर' ग्रिड व्यू 'डालने से समस्या हल नहीं होती है क्योंकि यह प्रभावी रूप से' ग्रिड व्यू 'को घेरने के लिए एक अनंत स्थान देता है और इसमें स्क्रॉलबार नहीं होते हैं। – Squonk

उत्तर

0

GridViewAbsListView कक्षा बढ़ाता है। संक्षेप में ग्रिड व्यू पंक्तियों के अतिरिक्त कॉलम के समर्थन के साथ एक सूचीदृश्य है। तो यह क्षैतिज स्क्रॉलिंग का समर्थन नहीं करता है।

android:scrollbars="vertical|horizontal" विशेषता सेट करके आपने अनिवार्य रूप से क्या किया है, यह ग्रिड व्यू को क्षितिज और लंबवत स्क्रॉल बार दोनों को दिखाने के लिए निर्देश देना है। इस विशेषता को सेट करने से दृश्य में स्क्रॉलिंग सक्षम नहीं होगी (ग्रिडव्यू और सूचीदृश्यों में स्क्रॉलिंग आंतरिक रूप से सक्षम है)।

यदि आप जो कुछ करने की कोशिश कर रहे हैं उस पर थोड़ा और बता सकते हैं, तो वैकल्पिक दृष्टिकोण का सुझाव दिया जा सकता है।

0

बेस्ट समाधान जहाँ तक मुझे पता के रूप में `GridView` स्क्रीन की चौड़ाई में तय हो गई है और इसलिए यह एक क्षैतिज दिशा में स्क्रॉल करने के लिए संभव नहीं है एंड्रॉयड

 <HorizontalScrollView 
      android:layout_width="match_parent" 
      android:layout_height="fill_parent" 
      android:layout_below="@+id/seatLegendLayout"> 

      <FrameLayout 
       android:layout_width="fill_parent" 
       android:layout_height="match_parent"> 

       <LinearLayout 
        android:id="@+id/linearLayout_gridtableLayout" 
        android:layout_width="900dp" 
        android:layout_height="match_parent" 
        android:orientation="horizontal"> 

        <GridView 
         android:id="@+id/gridView1" 
         android:layout_width="fill_parent" 
         android:layout_height="fill_parent" 
         android:layout_margin="4dp" 
         android:columnWidth="100dp" 
         android:gravity="center" 
         android:numColumns="9" 
         android:horizontalSpacing="1dp" 
         android:scrollbarAlwaysDrawHorizontalTrack="true" 
         android:scrollbarAlwaysDrawVerticalTrack="true" 
         android:scrollbars="horizontal" 
         android:stretchMode="none" 
         android:verticalSpacing="1dp"> 

        </GridView> 


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