ฉันได้รับค่าสีฐานสิบหกจากเซิร์ฟเวอร์ (ในรูปแบบนี้#xxxxxx
เช่น#000000
สีดำ)
ฉันจะแปลงค่านี้เป็นค่าจำนวนเต็มได้อย่างไร
ฉันพยายามทำInteger.valueOf("0x" + passedColor.substring(1, passedColor.length()))
เพื่อให้ได้0x000000
ผลลัพธ์ที่แตกต่างกันมากขึ้นแต่นี่ไม่ได้เป็นint
ข้อเสนอแนะอื่นใด
ฉันได้รับข้อผิดพลาด: 08-03 21:06:24.673: ERROR/AndroidRuntime(20231): java.lang.NumberFormatException: unable to parse '0x00C8FBFE' as integer
ฉันใช้ Android SDK สำหรับsetBackgroundColor(int color)
ฟังก์ชั่นซึ่งใช้เวลา - อย่างที่คุณคาดเดา - ค่าสีจำนวนเต็ม
นี่คือ OPPOSITE ของคำถามนี้: จะแปลงจำนวนเต็มสีเป็น hex String ใน Android ได้อย่างไร?
valueOf
ที่คุณระบุอินพุตสตริง (โดยไม่ต้อง # แน่นอน) และรัศมีซึ่งระบุฐานInteger.valueOf(passedColor.substring(1, passedColor.length()), 16)
สามารถทำได้ด้วยฐานจำนวนเต็ม! download.oracle.com/javase/6/docs/api/java/lang/… , int)