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


13
ความแตกต่างระหว่าง“ @ id /” และ“ @ + id /” ใน Android
ความแตกต่างระหว่าง@id/และ@+id/คืออะไร? ใน@+id/เครื่องหมายบวก+สั่งให้สร้างชื่อทรัพยากรใหม่และเพิ่มเข้าไปในR.javaไฟล์ แต่สิ่งที่เกี่ยวกับ@id/? จากเอกสารของID: เมื่ออ้างอิงทรัพยากร Android IDคุณไม่จำเป็นต้องมีเครื่องหมายบวก แต่จะต้องเพิ่มเนมสเปซของ Android package เช่น: android:id="@android:id/list" @android:id/แต่ในภาพด้านล่างคราสไม่แนะนำชนิดของใด ๆ มี@id/และ@android:id/เดียวกันได้หรือไม่

9
คุณจะรับหมายเลขเวอร์ชันได้จากตัวแปร XML ของแอพ (เค้าโครง) อย่างไร
ฉันต้องการมีวิธีการอ้างอิงหมายเลขรุ่นรายการของโครงการในส่วนหลักของรหัส สิ่งที่ฉันทำมาจนถึงตอนนี้คือการเชื่อมโยงหมายเลขเวอร์ชันในไฟล์ String XML ไปยังรายการ (@ string / Version) สิ่งที่ฉันอยากทำคือทำอย่างอื่นเชื่อมโยงตัวแปร XML สตริงกับเวอร์ชันในไฟล์ Manifest เหตุผล? ฉันต้องการจะเปลี่ยนหมายเลขเวอร์ชั่นในไฟล์เดียวไฟล์เดียว มีวิธีการทำเช่นนี้? ขอบคุณ!

6
แอตทริบิวต์ที่กำหนดเองใน styles.xml
ฉันสร้างวิดเจ็ตที่กำหนดเองและฉันประกาศใน layout.xml ฉันได้เพิ่มคุณสมบัติที่กำหนดเองใน attr.xml ด้วย อย่างไรก็ตามเมื่อพยายามที่จะประกาศคุณลักษณะเหล่านี้ในสไตล์ใน styles.xml มันให้ฉันNo resource found that matches the given name: attr 'custom:attribute'. ฉันต้องใส่xmlns:custom="http://schemas.android.com/apk/res/com.my.package"ในแท็กทั้งหมดใน styles.xml รวมทั้ง<?xml>, <resources>และ<style>แต่ก็ยังทำให้ผมมีข้อผิดพลาดเดียวกันว่ามันไม่สามารถหา namespace XML แบบกำหนดเองของฉัน อย่างไรก็ตามฉันสามารถใช้เนมสเปซของฉันเพื่อกำหนดแอตทริบิวต์ให้กับมุมมองใน layout.xml ของฉันด้วยตนเองได้ดังนั้นจึงไม่มีอะไรผิดกับเนมสเปซ ปัญหาของฉันอยู่ที่การทำให้ styles.xml รับรู้ถึง attr.xml ของฉัน

3
ค่า dpi ของมุมมองข้อความเริ่มต้น "ใหญ่", "ปานกลาง" และ "เล็ก"
เอกสาร (หรือทุกคน) พูดถึงค่า dpi ของค่าเริ่มต้นหรือไม่ TextView ขนาดใหญ่ { android:textAppearance="?android:attr/textAppearanceLarge"} Medium TextView { android:textAppearance="?android:attr/textAppearanceMedium"} TextView ขนาดเล็ก { android:textAppearance="?android:attr/textAppearanceSmall"} วิดเจ็ตใน SDK? ในการวางไว้ในอีกทางหนึ่งเราสามารถทำซ้ำลักษณะที่ปรากฏของมุมมองข้อความเหล่านี้โดยไม่ใช้android:textAppearanceแอตทริบิวต์ได้หรือไม่?

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
เพิ่มภาพพื้นหลังเพื่อกำหนดรูปร่างใน XML Android
คุณจะเพิ่มภาพพื้นหลังให้กับรูปร่างได้อย่างไร รหัสที่ฉันลองด้านล่าง แต่ไม่สำเร็จ: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> //here is where i need to set the image <solid android:color="@drawable/button_image"/> <corners android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp" android:topLeftRadius="5dp" android:topRightRadius="5dp"/> </shape>

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

7
ฉันจะเข้าถึงค่า BuildConfig ในไฟล์ AndroidManifest.xml ได้อย่างไร
เป็นไปได้ไหมที่จะเข้าถึงค่า BuildConfig จาก AndroidManifest.xml ในไฟล์ build.gradle ของฉันฉันมี: defaultConfig { applicationId "com.compagny.product" minSdkVersion 16 targetSdkVersion 21 versionCode 1 versionName "1.0" // Facebook app id buildConfigField "long", "FACEBOOK_APP_ID", FACEBOOK_APP_ID } FACEBOOK_APP_ID ถูกกำหนดไว้ในไฟล์ gradle.properties ของฉัน: # Facebook identifier (app ID) FACEBOOK_APP_ID=XXXXXXXXXX ในการใช้ Facebook เชื่อมต่อในแอพของฉันฉันต้องเพิ่มบรรทัดนี้ใน AndroidManifest.xml ของฉัน: <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId"/> ฉันต้องการแทนที่@string/applicationIdด้วยฟิลด์ BuildConfig ที่FACEBOOK_APP_IDกำหนดใน gradle …

4
เป็นไปได้ไหมที่จะหมุน drawable ในคำอธิบาย xml
ฉันกำลังสร้างแอปโดยมีทรัพยากรที่สามารถใช้ซ้ำได้ (เนื่องจากปุ่มต่างๆมักจะเหมือนกัน แต่จะเป็นมิเรอร์หรือหมุน) ฉันต้องการใช้ทรัพยากรเดียวกันดังนั้นฉันจึงไม่ต้องเพิ่มทรัพยากรอีก 3 รายการที่เหมือนกับต้นฉบับทุกประการ แต่ถูกหมุนเวียน แต่ฉันก็ไม่ต้องการผสมโค้ดกับสิ่งที่สามารถประกาศใน XML หรือทำการแปลงด้วยเมทริกซ์ที่จะเสียเวลาในการประมวลผล ฉันมีปุ่มสถานะสองปุ่มที่ประกาศใน XML <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/and_card_details_button_down_left_onclick" /> <!-- pressed --> <item android:drawable="@drawable/and_card_details_button_down_left" /> <!-- default --> </selector> และฉันต้องการใช้ที่ดึงได้ซ้ำเพราะมันจะเหมือนเดิม แต่หมุน90ºและ45ºและฉันกำหนดให้ปุ่มเป็นแบบดึงได้ <Button android:id="@+id/Details_Buttons_Top_Left_Button" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/details_menu_large_button" /> ฉันรู้ว่าฉันสามารถหมุนได้ด้วย a RotateDrawableหรือด้วยMatrixแต่อย่างที่ฉันอธิบายไปแล้วว่าฉันไม่ชอบวิธีนั้น เป็นไปได้หรือไม่ที่จะบรรลุสิ่งนั้นโดยตรงบน XML หรือสิ่งใดที่คุณคิดว่าจะเป็นวิธีที่ดีที่สุด? ใส่ทรัพยากรทั้งหมด แต่หมุนแล้วหมุนในรหัส? - แก้ไข - …

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