我有一個任務將NSString顏色名稱ex:「Green」從configuration.plist文件轉換爲UIColor或十六進制顏色代碼,例如「00ff00」。我已經有了將十六進制顏色代碼轉換爲UIColor的代碼。我試圖用這個任務的另一個代碼示例,但不工作。 請幫我解決這個問題。將NSString顏色名稱轉換爲UIColor
回答
想到如果你正在使用SWIFT可以伊斯利開發該系統的顏色做到這一點。都開始定義一組不可能性的顏色在一個枚舉這樣的:
enum MyColor: String {
case green
case red
case blue
// and so on
var hex: Int {
switch self {
case green: return 0xABCDF
case red: return 0xABCDF
case blue: return 0xABCDF
}
}
}
然後你需要爲使用這個新的枚舉
extension UIColor {
convenience init(myColor: MyColor) {
self.init(hex: myColor.raw)
}
init(hex: Int) {
}
}
之後,你可以用來初始化侑顏色的UIColor類新的init像這樣:
let theColor = MyColor(rawValue: "green")
let color = UIcolor(myColor: theColor)
這可以實現的唯一方法是如果您在應用程序中存儲顏色名稱的十六進制顏色代碼。
您可以維護一個屬性列表或將這些鍵值對存儲在覈心數據中。
您的應用程序會做這樣的事情
紅:「十六進制紅色」 藍:「十六進制爲藍」 綠色:「十六進制綠色」
在其中存儲這些密鑰的方式價值對取決於你。現在,當您需要從顏色名稱中獲取顏色時,只需查看它的十六進制代碼並將其轉換爲UIColor即可。
你將不得不對所有您在您的應用程序
謝謝沙燕,有沒有其他辦法來完成我的任務。 –
@PrashanthKp不在我看來。你可以在互聯網上做一些研究,以確保 –
謝謝@Shayan,實際上我正在爲此尋找解決方案,但我認爲這可能是解決方案,因爲很少有人已經建議我這樣做。 –
- 1. 將顏色名稱轉換爲RGB
- 2. 如何將nsstring轉換爲uicolor?
- 3. 將十六進制顏色代碼轉換爲顏色名稱
- 4. 如何將UIColor值轉換爲指定的顏色字符串?
- 5. 將16位顏色範圍內的值轉換爲UIColor
- 6. 如何將UIColor RGB顏色轉換爲uint32_t值
- 7. 顏色名稱轉換串色「ID」
- 8. 將顏色代碼替換爲顏色名稱的腳本?
- 9. 將十六進制顏色值轉換爲近似顏色名稱的函數?
- 10. 將rgb顏色轉換爲最接近的有效CSS3顏色名稱
- 11. 如何將十六進制值轉換爲顏色名稱
- 12. 如何將rgba(92,184,92,1)轉換爲顏色名稱?
- 13. 如何將HTML顏色名稱轉換爲Ruby中的RGB值?
- 14. 在C#中將顏色名稱轉換爲十六進制
- 15. .NET - 將顏色名稱字符串轉換爲System.Drawing.Color
- 16. 如何將RGB值轉換爲Silverlight 4.0中的顏色名稱?
- 17. 將CGcolorRef轉換爲UIColor
- 18. 將uint轉換爲顏色
- 19. 將顏色轉換爲ConsoleColor?
- 20. 轉換RGB顏色英文顏色的名稱,如與Python
- 21. 將CMYK PDF轉換爲專色(顏色)
- 22. 顏色和顏色名稱
- 23. 將SID轉換爲名稱
- 24. Xamarin.iOS,OxyPlot如何將UIColor轉換爲OxyColor
- 25. 將UIColor轉換爲24位值
- 26. 將工具提示RGB值替換爲其顏色名稱
- 27. 將包含NSString的NSArray轉換爲NSString
- 28. php將irc顏色轉換爲html
- 29. 將整數轉換爲WPF的顏色
- 30. 將整數顏色值轉換爲RGB
你想將十六進制顏色代碼轉換爲UIColor權利? –
[如何將NSString轉換爲UIColor]可能的重複(http://stackoverflow.com/questions/8228339/how-to-convert-nsstring-to-uicolor) – alexburtnik
@Darshan,用戶輸入將會像**「石灰「**,並應相應地應用顏色。 –