मैं अपने प्रोजेक्ट के लिए षट्भुज आकार बनाना चाहता हूं, इसलिए मैं उस आकार को .xml प्रारूप में बनाना चाहता हूं, इसलिए मैं कैसे बना सकता हूं।.xml प्रारूप में हेक्सागोन आकार कैसे बनाएं
उत्तर
आप के लिए सबसे अच्छा समाधान VectorDrawable का उपयोग किया जाएगा:
वेक्टर drawable के रूप मेंषट्कोण आकार:
<vector android:height="24dp" android:viewportHeight="628.0"
android:viewportWidth="726.0" android:width="27dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#00ffffff"
android:pathData="m723,314c-60,103.9 -120,207.8 -180,311.8 -120,0 -240,0 -360,0C123,521.8 63,417.9 3,314 63,210.1 123,106.2 183,2.2c120,0 240,0 360,0C603,106.2 663,210.1 723,314Z"
android:strokeColor="#000000" android:strokeWidth="4"/>
</vector>
अद्यतन (28: ०७.२,०१६):
लॉलीपॉप उपयोग समर्थन लाइब्रेरी के नीचे एपीआई का समर्थन करने के http://android-developers.blogspot.com/2016/02/android-support-library-232.html VectorDrawableCompat का उपयोग करना याद रखें VectorDrawable
आप (पुराने संस्करण के लिए VectorDrawableCompat) VectorDrawable उपयोग कर सकते हैं https://developer.android.com/studio/write/vector-asset-studio.html। आप .svg फ़ाइलों से आकार आयात आसानी से कर सकते हैं।
सबसे समाधान सहित शामिल होगा जबकि ShapeImageView (जो एक महान पुस्तकालय है, Btw), तो आप हमेशा एक कस्टम षट्भुज आकार का लेआउट बनाने के लिए अपने स्वयं के तर्क लिख सकते हैं।
तुम सब Path
ऑब्जेक्ट के गुणों को परिभाषित करने और उसके बाद का उपयोग करें कि कैनवास का उपयोग कर लेआउट की विधि OnDraw() में करने की जरूरत है।
इस प्रकार आप हेक्सागोन पथ बनाएंगे।
float midx = getWidth()/2;
float midy = getHeight()/2;
Path p = new Path();
p.moveTo(midx, midy);
p.lineTo(midx+150, midy + 220);
p.lineTo(midx, midy + 220);
p.lineTo(midx-150, midy + 220);
p.lineTo(midx-300, midy);
p.lineTo(midx-150, midy-220);
p.lineTo(midx+150, midy-220);
p.lineTo(midx+300, midy);
p.lineTo(midx+150, midy + 220);
return p;
अब, अपने कस्टम हेक्सागोन लेआउट में, इस पथ को ऑन ड्रा() में उपयोग करें।
@Override
protected void onDraw(Canvas canvas) {
Path clipPath = new Path();
clipPath.addPath(p); //p is the path you created above
canvas.clipPath(clipPath);
canvas.drawColor(Color.RED); //optional
super.onDraw(canvas)
}
बार जब आप अपने कस्टम लेआउट तैयार है, आप किसी भी drawable आप चाहते हैं (यदि आप किसी अन्य लेआउट के लिए क्या करना होगा बस के रूप में) करने के लिए लेआउट की पृष्ठभूमि सेट कर सकते हैं।
- 1. आकार में सीमा xml
- 2. एंड्रॉइड हेक्सागोन ग्रिड
- 3. सीएसएस में हेक्सागोन बनाना, समरूपता
- 4. एंड्रॉइड में JSON प्रारूप डेटा कैसे बनाएं?
- 5. एक्सेल के .xlsx XML प्रारूप
- 6. प्रारूप निर्दिष्ट करना: "xml" render_to_string
- 7. हेक्सागोन के साथ सर्कल भरना
- 8. LINQ और XDocument: XML फ़ाइल कैसे बनाएं?
- 9. पायथन में फ़िक्स आकार सूची कैसे बनाएं?
- 10. Node.js: XML फ़ाइलों को कैसे बनाएं
- 11. अर्ध पारदर्शी आकार कैसे बनाएं?
- 12. सी में एक आकार बनाएं ++
- 13. पेंटागन के बिना क्षेत्र पर हेक्सागोन ग्रिड
- 14. symfony yaml config files को xml प्रारूप
- 15. JMSSerializerBundle का उपयोग करके एक अच्छा हाइपरमीडिया प्रारूप कैसे बनाएं?
- 16. एडीओ.NET डेटा सेवाएं - प्रारूप पैरामीटर - xml/json
- 17. एसवीजी को एसएचपी (आकार फ़ाइल) प्रारूप में कैसे परिवर्तित करें?
- 18. उपयोग में एंड्रॉयड लेआउट xml फ़ाइल स्ट्रिंग प्रारूप तर्क
- 19. पैरेंट आकार के सापेक्ष फ़ॉन्ट आकार कैसे बनाएं?
- 20. आकार में 2 जेबुटन समान बनाएं
- 21. कम आकार के एंड्रॉइड ऐप्स कैसे बनाएं?
- 22. आकार बदलने योग्य पैनल कैसे बनाएं?
- 23. फ्लेक्सबॉक्स आइटम को समान आकार कैसे बनाएं?
- 24. एंड्रॉइड होमस्क्रीन पर 4x1 आकार विजेट कैसे बनाएं?
- 25. स्वचालित रूप से एक XML स्कीमा से एक GUI बनाएं
- 26. हेक्सागोन (विभिन्न दृष्टिकोण) के साथ सर्कल भरना
- 27. कस्टम ड्रायरेबल बनाएं और इसका उपयोग XML
- 28. C# बाइट सरणी से xml बनाएं
- 29. क्या .NET असेंबली प्रारूप में आकार सीमाएं हैं?
- 30. एक .NET ऑब्जेक्ट से XML दस्तावेज़ कैसे बनाएं?
क्या आप 'छवि दृश्य' पृष्ठभूमि में उपयोग करना चाहते हैं? या कोई अन्य उद्देश्य। –
हाँ, मैं ImageView पृष्ठभूमि में उपयोग करना चाहता हूं। इसलिए मुझे यह आकार .xml प्रारूप – suraj
http://stackoverflow.com/a/22987264/1992254 – Tejas