2012-05-15 74 views
0

我正在開發一個UI任務,在這個任務中我需要設置以十六進制代碼「#ededed」給出的背景顏色。眼下I M與此代碼的工作:設置十六進制顏色代碼「#ededed」作爲黑莓中我的主屏幕的背景顏色?

((VerticalFieldManager) getMainManager()).setBackground(BackgroundFactory.createSolidBackground(**Color.LIGHTGRAY**)); 

但在這個地方我Color.LIGHTGRAY必須使用的「#ededed」十六進制顏色代碼。

請幫助我過來這個小而邏輯的任務。 Thanx提前...!

回答

4

如何:

((VerticalFieldManager) getMainManager()).setBackground(BackgroundFactory.createSolidBackground(0xededed)); 
+0

upvote這個簡單的解決方案;) – rosco

+0

我認爲字符串,「#ededed」需要轉換爲其整數等效的運行時間。 – Rupak

+0

無需在運行時執行此操作,編譯器將「0x」識別爲十六進制前綴,並將以下字符解釋爲整數的十六進制表示形式。 –

0

你爲什麼不使用這個鏈接顏色轉換爲您想要的顏色和執行代碼

  http://easycalculation.com/color-coder.php 

如果你的目標是用java顏色代碼,這是最好的鏈接

  http://www.jafar.com/java/csel/index.html 

希望它幫助。

0

以下代碼字符串(十六進制表示)轉換爲它的等效整數,並且使用該值作爲背景顏色。

String strColor = "#ededed"; 
// remove # char 
strColor = strColor.substring(1); 

try { 
    // get integer equivalent 
    int iColor = Integer.parseInt(strColor, 16); 
    getMainManager().setBackground(BackgroundFactory.createSolidBackground(iColor)); 
} catch (Exception exc) { 
} 
1

簡單的辦法是:

getMainManager().setBackground(BackgroundFactory.createSolidBackground(0xededed)); 

無需轉換爲VerticalFieldManager因爲主要管理者是Field和類包含setBackground方法。

相關問題