2015-01-28 5 views

उत्तर

1

स्थापना android:dropDownVerticalOffset मुझे लंगर दृश्य ओवरलैप की अनुमति दी। इस ListPopupWindow इस ओवरलैप एंकर विशेषता का उपयोग करके AppCompatPopupWindow लपेटता है। यह सब समर्थन पुस्तकालय में।

+0

परितोष टोंक का जवाब ऐसा करने का सही तरीका है। आपको वह जवाब स्वीकार करना चाहिए। –

0

आप के बजाय PopupWindow का उपयोग कर को देखा है: मैं this को कुछ इसी तरह से बनाना चाहते हैं? वे अपने प्लेसमेंट में थोड़ी अधिक लचीलापन प्रदान करते हैं। आप एंकर व्यू और एक एक्स और वाई ऑफसेट निर्दिष्ट कर सकते हैं जो आपको ओवरलैप को परिभाषित करने देगा।

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <item name="popupMenuStyle">@style/PopupMenu</item> 
</style> 

<style name="PopupMenu" parent="@style/Widget.AppCompat.Light.PopupMenu"> 
    <item name="android:dropDownVerticalOffset">-36dip</item> 
</style> 
11

स्थापना overlapAnchor मेरे बिना ऑफसेट सेटिंग लंगर दृश्य ओवरलैप करने की अनुमति दी:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <item name="popupMenuStyle">@style/PopupMenu</item> 
</style> 

<style name="PopupMenu" parent="@style/Widget.AppCompat.Light.PopupMenu"> 
    <item name="overlapAnchor">true</item> 
</style> 

PopupMenu इसके अंदर एक ListPopupWindow लपेटता

+0

यह सबसे सुरुचिपूर्ण समाधान की तरह लगता है, धन्यवाद! हालांकि, मुझे ओवरलैप एंकर (ऊपर के रूप में) और शैलियों-v21 में एंड्रॉइड का उपयोग करके डिफ़ॉल्ट शैलियों में स्टाइल को जोड़ना था: ओवरलैप एंकर को प्री-लॉलीपॉप और लॉलीपॉप डिवाइस दोनों पर समान व्यवहार प्राप्त करने के लिए। –

+0

क्या समर्थन लाइब्रेरी से PopupMenu का उपयोग किये बिना ओवरलैप एंकर का उपयोग करने का कोई तरीका है? यह एक कष्टप्रद बग है: https://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=popupmenu%20scroll&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort= और id = 135439 –

+0

घंटों खर्च करने के बाद मैंने देखा कि मैंने 'android.support.v7.widget.PopupMenu' के बजाय डिफ़ॉल्ट' android.widget.PopupMenu' का उपयोग किया था। – danijar

8

वैकल्पिक Paritosh Tonk करने की जवाब:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="popupMenuStyle">@style/Widget.AppCompat.Light.PopupMenu.Overflow</item> 
</style> 

या गहरे रंग की थीम के लिए:

<style name="AppTheme.Dark" parent="Theme.AppCompat.NoActionBar"> 
    <item name="popupMenuStyle">@style/Widget.AppCompat.PopupMenu.Overflow</item> 
</style> 
0

मैं यहाँ आया था जब एक पॉपअप मेनू है कि इसके लंगर overlaps बनाने का तरीका पता लगाने की कोशिश जब एंकर कार्रवाई में है। चूंकि यह उस समस्या के लिए एक प्रमुख खोज परिणाम है, इसलिए मैं यहां जवाब छोड़ना चाहता हूं, भले ही मुझे यकीन नहीं है कि समाधान ओपी के लिए काम करेगा या नहीं।

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" > 
    <!-- This item will expand into a submenu --> 
    <item 
     android:id="@+id/anchor" 
     android:icon="@drawable/ic_anchor" 
     android:title="@string/anchor" 
     app:showAsAction="always"> 
     <menu> 
      <item 
       android:id="@+id/subMenuItemOne" 
       android:showAsAction="never" 
       android:title="SubMenuItemOne"/> 
      <item 
       android:id="@+id/subMenuItemTwo" 
       android:showAsAction="never" 
       android:title="SubMenuItemTwo"/> 
     </menu> 
    </item> 
</menu> 
संबंधित मुद्दे