คำถามติดแท็ก android-drawable

ใน Android Drawable เป็นนามธรรมทั่วไปสำหรับ "สิ่งที่วาดได้"

19
วิธีแปลง Drawable เป็น Bitmap
ฉันต้องการตั้งค่าบางอย่างDrawableเป็นวอลล์เปเปอร์ของอุปกรณ์ แต่ฟังก์ชั่นวอลล์เปเปอร์ทั้งหมดยอมรับBitmapเฉพาะ ฉันไม่สามารถใช้WallpaperManagerเพราะฉันก่อน 2.1 R.drawableนอกจากนี้ยังมีภาพวาดของฉันจะถูกดาวน์โหลดจากเว็บและไม่ได้อาศัยอยู่ใน


16
จะกำหนดรูปวงกลมในไฟล์ Android XML ที่สามารถวาดได้อย่างไร
ฉันมีปัญหาบางอย่างในการค้นหาเอกสารประกอบคำจำกัดความของรูปร่างใน XML สำหรับ Android ฉันต้องการกำหนดวงกลมอย่างง่ายที่เต็มไปด้วยสีทึบในไฟล์ XML เพื่อรวมไว้ในไฟล์เลย์เอาต์ของฉัน น่าเสียดายที่ Documentation บน android.com ไม่ครอบคลุมคุณลักษณะ XML ของคลาส Shape ฉันคิดว่าฉันควรใช้ArcShapeเพื่อวาดวงกลม แต่ไม่มีคำอธิบายเกี่ยวกับวิธีการตั้งค่าขนาดสีหรือมุมที่จำเป็นในการสร้างวงกลมออกจากส่วนโค้ง

11
Mipmap drawable สำหรับไอคอน
ตั้งแต่ Android 4.3 (Jelly Bean) ตอนนี้เราสามารถใช้res/mipmapโฟลเดอร์เพื่อเก็บภาพ "mipmap" ตัวอย่างเช่นChrome สำหรับ Androidเก็บไอคอนไว้ในโฟลเดอร์เหล่านี้แทนที่จะเป็นres/drawableโฟลเดอร์ปกติ รูปภาพ mipmap เหล่านี้แตกต่างจากรูปภาพอื่น ๆ ที่คุ้นเคยได้อย่างไร ฉันเห็นว่าในรายการของฉันเราใช้@mipmap/qualifier แทน@drawable/ซึ่งทำให้เหมาะสมกับชื่อโฟลเดอร์ทรัพยากร: <activity android:name=".MipmapDemp" android:icon="@mipmap/ic_launcher" /> อ้างอิง: Android 4.3 APIsเอกสารมีดังต่อไปนี้จะพูดว่า: การใช้ mipmap เป็นแหล่งข้อมูลสำหรับบิตแมปหรือ drawable ของคุณเป็นวิธีที่ง่ายในการจัดเตรียมรูปภาพคุณภาพและขนาดรูปภาพต่าง ๆ ซึ่งมีประโยชน์อย่างยิ่งหากคุณคาดว่ารูปภาพของคุณจะถูกปรับสัดส่วนในระหว่างการเคลื่อนไหว Android 4.2 (API ระดับ 17) เพิ่มการสนับสนุนสำหรับ mipmaps ในคลาส Bitmap - Android จะทำการแลกเปลี่ยนรูปภาพ mip ใน Bitmap ของคุณเมื่อคุณให้แหล่งข้อมูล mipmap และเปิดใช้งาน …




22
จะเพิ่มรูปภาพไปยังโฟลเดอร์“ drawable” ใน Android Studio ได้อย่างไร?
ฉันต้องเพิ่มรูปภาพในres/drawableโฟลเดอร์ ... เมื่อฉันเลือกnew > image assetมันจะมีข้อความออกมาให้เลือกAsset Type... ฉันจะเพิ่มรูปภาพไปยังres/drawableโฟลเดอร์ได้อย่างไร?

7
โปรแกรมตั้งค่า drawable ทางซ้ายใน TextView โดยทางโปรแกรม
ฉันมี textView เป็น xml ที่นี่ <TextView android:id="@+id/bookTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:drawableLeft="@drawable/checkmark" android:gravity="center_vertical" android:textStyle="bold" android:textSize="24dip" android:maxLines="1" android:ellipsize="end"/> อย่างที่คุณเห็นฉันตั้ง DrawableLeft ใน xml ฉันต้องการเปลี่ยน drawable ในรหัส ยังมีอีกไหมที่จะทำสิ่งนี้? หรือตั้งค่า drawableLeft เป็นโค้ดสำหรับมุมมองข้อความ?

21
จะเปลี่ยนสีของ Drawable ใน Android ได้อย่างไร?
ฉันกำลังทำงานกับแอปพลิเคชัน Android และฉันมี drawable ที่ฉันโหลดขึ้นมาจากอิมเมจต้นฉบับ ในภาพนี้ฉันต้องการแปลงพิกเซลสีขาวทั้งหมดให้เป็นสีที่ต่างกันพูดสีฟ้าจากนั้นแคชวัตถุที่วาดได้ผลลัพธ์เพื่อให้ฉันสามารถใช้ในภายหลัง ตัวอย่างเช่นสมมติว่าฉันมีไฟล์ PNG ขนาด 20x20 ที่มีวงกลมสีขาวอยู่ตรงกลางและทุกอย่างที่อยู่นอกวงกลมนั้นโปร่งใส อะไรคือวิธีที่ดีที่สุดในการเปลี่ยนวงกลมสีขาวสีฟ้าและแคชผลลัพธ์ คำตอบเปลี่ยนไปหรือไม่ถ้าฉันต้องการใช้อิมเมจต้นฉบับนั้นเพื่อสร้าง Drawables ใหม่หลายรายการ (เช่นสีน้ำเงินแดงเขียวเขียวส้ม ฯลฯ ) ฉันคาดเดาว่าฉันจะต้องการใช้ ColorMatrix แต่อย่างใด แต่ฉันก็ไม่แน่ใจ

5
ไอคอนเมนูมาตรฐาน Android เช่นรีเฟรช [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ใน Android SDK android.R.drawable.Xมีไอคอนเมนูมาตรฐานผ่าน แต่บางไอคอนมาตรฐานเช่นic_menu_refresh(ไอคอนรีเฟรช) android.Rจะหายไปจาก มีวิธีใดบ้างที่จะได้รับไอคอนดั้งเดิมโดยการแยกพวกมันออกจากแอปพลิเคชัน ฉันตรวจสอบแหล่งที่มาของ Android แล้ว แต่มันใหญ่เกินไปที่จะมองหาภาพทุกที่ ฉันรู้จักเว็บไซต์Android Drawablesแต่ฉันต้องการรับรุ่นhdpi , mdpiและldpi ที่ถูกต้องมากกว่าเว็บไซต์ดั้งเดิม

11
ปรับขนาดไอคอนของปุ่มการกระทำลอยตัว (fab)
ใหม่ปุ่มการกระทำลอยควรจะ56dp x 56dpและไอคอนที่อยู่ภายในก็ควรจะ24dp x 24dp ดังนั้นช่องว่างระหว่างไอคอนและปุ่มที่ควรจะ16dp <ImageButton android:id="@+id/fab_add" android:layout_width="56dp" android:layout_height="56dp" android:layout_gravity="bottom|right" android:layout_marginBottom="16dp" android:layout_marginRight="16dp" android:background="@drawable/ripple_oval" android:elevation="8dp" android:src="@drawable/ic_add_black_48dp" /> ripple_oval.xml <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:colorControlHighlight"> <item> <shape android:shape="oval"> <solid android:color="?android:colorAccent" /> </shape> </item> </ripple> และนี่คือผลลัพธ์ที่ฉันได้รับ: ฉันใช้ไอคอนจาก\ material-design-icons-1.0.0 \ content \ drawable-hdpi \ ic_add_black_48dp.png https://github.com/google/material-design-icons/releases /tag/1.0.1 วิธีที่จะทำให้ขนาดของไอคอนภายในปุ่มจะตรงตามที่อธิบายไว้ในหลักเกณฑ์? http://www.google.com/design/spec/components/buttons.html#buttons-floating-action-button

15
เส้นแนวตั้งโดยใช้ XML drawable
ฉันพยายามหาวิธีกำหนดเส้นแนวตั้ง (หนา 1dp) เพื่อใช้เป็น drawable หากต้องการสร้างแนวนอนมันค่อนข้างตรงไปตรงมา: <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line"> <stroke android:width="1dp" android:color="#0000FF"/> <size android:height="50dp" /> </shape> คำถามคือทำอย่างไรถึงจะทำให้บรรทัดนี้เป็นแนวดิ่ง ใช่มีวิธีแก้ไขปัญหาเช่นการวาดรูปสี่เหลี่ยมผืนผ้าหนา 1px แต่จะทำให้ XML ที่วาดได้ซับซ้อนขึ้นหากประกอบไปด้วย<item>องค์ประกอบหลายอย่าง ใครมีโอกาสกับเรื่องนี้? UPDATE เคสยังไม่ได้รับการแก้ไข อย่างไรก็ตามสำหรับทุกคนในสงครามครูเสดเอกสาร Android - คุณอาจพบว่ามีประโยชน์นี้: คู่มือ Android XML หายไป UPDATE ฉันไม่พบวิธีอื่นนอกจากวิธีที่ฉันทำเครื่องหมายว่าถูกต้อง มันหลอกลวง แต่รู้สึกว่า "หนัก" เล็กน้อยดังนั้นถ้าคุณรู้คำตอบอย่าลืมแบ่งปัน;)

6
การจัดเก็บ R.drawable IDs ในอาร์เรย์ XML
ฉันต้องการเก็บ ID ของทรัพยากร drawable ในรูปแบบของR.drawable.*อาร์เรย์ภายในโดยใช้ไฟล์ค่า XML แล้วดึงข้อมูลอาร์เรย์ในกิจกรรมของฉัน ความคิดใด ๆ ของวิธีการบรรลุสิ่งนี้?

11
รับบิตแมปจากเวกเตอร์ drawable
ในแอปพลิเคชันของฉันฉันต้องตั้งไอคอนขนาดใหญ่สำหรับการแจ้งเตือน LargeIcon ต้องเป็นบิตแมปและ drawables ของฉันคือภาพเวกเตอร์ (ฟีเจอร์ใหม่ใน Android ดูที่ลิงก์นี้ ) ปัญหาคือเมื่อฉันพยายามถอดรหัสทรัพยากรที่เป็นภาพเวกเตอร์ฉันได้รับค่า null กลับมา นี่คือตัวอย่างของรหัส: if (BitmapFactory.decodeResource(arg0.getResources(), R.drawable.vector_menu_objectifs) == null) Log.d("ISNULL", "NULL"); else Log.d("ISNULL", "NOT NULL"); ในตัวอย่างนี้เมื่อฉันแทนที่ R.drawable.vector_menu_objectifs ด้วยรูปภาพ "ปกติ" png สำหรับตัวอย่างผลลัพธ์ไม่เป็นโมฆะ (ฉันได้รับบิตแมปที่ถูกต้อง) มีบางสิ่งที่ฉันขาดไปหรือไม่?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.