2013-02-18 59 views
6

मैं छोटे एंड्रॉइड एप्लिकेशन को विकसित कर रहा हूं जिसमें मैं कुछ मेनू आइटम्स के साथ एक्शन बार का उपयोग कर रहा हूं। एक मेनू आइटम में उप मेनू होता है। अब मैं मेनू आइटम को पाठ और आइकन के साथ हमेशा प्रदर्शित करना चाहता हूं।एक्शन-बार - पाठ और छवि के साथ उप मेनू आइटम ठीक से काम नहीं कर रहा है

मैं मेनू आइटम को निम्न तरीके से परिभाषित करता हूं।

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item 
     android:id="@+id/card_menu" 
     android:icon="@drawable/abc" 
     android:showAsAction="withText|always" 
     android:title="cards"> 

     <menu> 

      <item 
       android:id="@+id/C1" 
       android:title="C1"/> 

      <item 
       android:id="@+id/C2" 
       android:title="c2"/> 

      <item 
       android:id="@+id/C3" 
       android:title="C3"/> 
     </menu> 
    </item> 

    <item 
     android:id="@+id/notification" 
     android:actionLayout="@layout/notification_icon" 
     android:icon="@drawable/notification" 
     android:showAsAction="always" 
     android:title="Notifications"/> 

    <item 
     android:id="@+id/filter" 
     android:icon="@drawable/filter" 
     android:showAsAction="always" 
     android:title="Filter"/> 

</menu> 

अब क्या होता है मेरी क्रिया-बार मेरी वस्तुओं को सही तरीके से प्रदर्शित करती है; केवल एक चीज यह है कि जब खिड़की पोर्ट्रेट मोड में होती है तो यह केवल छवि दिखाती है, और जब विंडो लैंडस्केप मोड में होती है तो यह छवि और टेक्स्ट दोनों को दिखाती है। लेकिन मैं दोनों मोड में छवि और पाठ चाहता हूँ।

यह कैसे करें? क्या इसका हल करने का कोई तरीका है?

+0

हाय जॉक उत्तर के लिए धन्यवाद, मैंने आपके संपादन की कोशिश की लेकिन यह मेरे लिए काम नहीं कर रहा है। आईआर केवल लैंडस्केप मोड में टेक्स्ट iand आइकन दिखाता है पोर्ट्रेट मोड में नहीं ... क्या कोई अन्य समाधान है .. मदद चाहिए .. धन्यवाद ... – nilkash

उत्तर

0

android:showAsAction="ifRoom|withText"always से बेहतर उपयोग कर बेहतर है।
उस मामले में आपके टेक्स्ट आकार और स्क्रीन चौड़ाई पर निर्भर करता है।

+0

यह वास्तव में सवाल का जवाब नहीं है। –

1

आप एंड्रॉयड Sopport लाइब्रेरी से ActionBar (android.support.v7.app.ActionBar) का उपयोग कर रहे हैं, तो आप से अपने मेनू और आइटम घोषणा बदलनी होगी:

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

<item 
    android:id="@+id/notification" 
    android:actionLayout="@layout/notification_icon" 
    android:icon="@drawable/notification" 
    android:showAsAction="always" 
    android:title="Notifications"/> 

<!-- Your menu --> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:yourappname="http://schemas.android.com/apk/res-auto" > 


<!-- Your item to be shown as action-->  
<item 
    android:id="@+id/notification" 
    android:actionLayout="@layout/notification_icon" 
    android:icon="@drawable/notification" 
    android:showAsAction="always" 
    yourappname:showAsAction="always" 
    android:title="Notifications"/> 

मैं एक ऐसी ही था पुरानी एंड्रॉइड संस्करणों को संगतता प्रदान करते समय समस्या।