2010-02-22 11 views
8

मुझे XML का उपयोग करके एक साधारण गोलाकार आयत बनाने में परेशानी हो रही है। एंड्रॉयड पर android.graphics.Path.addRoundRect (Path.java:514) परएंड्रॉइड - सरल आयताकार आकार नहीं बना सकता ... असमर्थितऑपरेशन अपवाद?

java.lang.UnsupportedOperationException : हर बार जब मैं कस्टम आकार मैं पाने के लिए तत्व "कोनों" जोड़ने की कोशिश .graphics.drawable.GradientDrawable.draw (GradientDrawable.java:314) android.view.View.draw (View.java:6520) पर ...

रेस/dawable/rounded_rectangle.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
     <solid android:color="#ffffff"/>  

     <stroke android:width="3dp" 
       android:color="#ff000000"/> 

     <padding android:left="1dp" 
       android:top="1dp" 
       android:right="1dp" 
       android:bottom="1dp"/> 

     <corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp" 
     android:topLeftRadius="7dp" android:topRightRadius="7dp"/> 
    </shape> 

सरल ऊपर आकार का उपयोग करते हुए layout.xml:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent"> 

<View android:id="@+id/View01" 
    android:background="@drawable/rounded_rectangle" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
</View> 
</RelativeLayout> 

FYI करें, मैं Android 2.1 के लिए संकलित करने के लिए कोशिश कर रहा हूँ और मैं सभी नवीनतम अद्यतन ग्रहण करने के लिए स्थापित और एंड्रॉयड एसडीके की है। यह आकार किसी अन्य वेबसाइट पर देखी गई किसी चीज़ की सीधी प्रति है, लेकिन किसी कारण से यह मेरे लिए काम नहीं करना चाहता है।

धन्यवाद।

+0

आकार तत्व और इसके गुण यहां देखें: http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape – vanna

उत्तर

34

तो, मैं बस थोड़ा सा खेल रहा था और मैंने इसे काम करने के लिए rounded_rectangle.xml में कुछ पंक्तियों को बदल दिया। नीचे देखें:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
    <solid android:color="#ffffff"/>  

    <stroke android:width="3dp" 
      android:color="#ff000000"/> 

    <padding android:left="1dp" 
      android:top="1dp" 
      android:right="1dp" 
      android:bottom="1dp"/> 

    <corners android:radius="30dp"/> 
</shape> 

मैं केवल इच्छा गूगल XML- आधारित आकार बनाने के लिए एक उचित संदर्भ दस्तावेज़ बाहर जाते थे। वेब पर उदाहरणों को शिकार करने के घंटों (4+) के बाद, मुझे लगता है कि यह अभी भी एक अनुमान लगाने वाला गेम है कि इस प्रकार के XML दस्तावेज़ों में कौन से तत्व/गुण समर्थित हैं। मिनी-रेंट के लिए खेद है।

मुझे उम्मीद है कि यह किसी और की मदद करेगा।

+2

छोटे नाइटपिक, लेकिन पिक्सेल (पीएक्स) का उपयोग करना आम तौर पर एक बुरा विचार है । शायद <कोनों एंड्रॉइड होना चाहिए: त्रिज्या = "30 डीपी" /> – DougW

+2

इसका कारण यह है कि आपने 4 अलग-अलग त्रिज्या मूल्यों को 1 में ध्वस्त कर दिया है। इस बग को देखें http://code.google.com/p/android/issues/ विस्तार? id = 7588 –

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