我正在開發一個Android應用程序,我試圖通過編碼動態地將漸變添加到按鈕。如果我靜態地在xml中應用漸變,6位十六進制代碼將起作用;但是當我嘗試從java更改漸變時不起作用。在這種情況下,8位十六進制代碼有效。 請幫我解決這個問題。Android的十六進制代碼問題
public void setGradient(btnGradientStartColor,btnGradientEndColor,buttonUnderAction) {
int colors[] = { btnGradientStartColor, btnGradientEndColor };
for(int x:colors){
System.out.println("value in colors[]:"+x);
}
GradientDrawable gradientDrawable = new GradientDrawable(GradientDrawable.Orientation.BL_TR, colors);
btnUnderAction.setBackgroundDrawable(gradientDrawable);
}
我將十六進制顏色代碼和按鈕ID傳遞給此方法。在這裏,如果我傳遞6位十六進制代碼,它不起作用,但8位十六進制代碼起作用。 例如0xff255779和0xffa6c0cd工作,但0x30196E和0x3498db不起作用。
有什麼辦法將6位十六進制代碼轉換爲8位數代碼,或者我可以用6位數代碼來得到我的代碼!
沒有足夠的信息來幫助你。 – JoxTraex
添加一些相關的代碼。 –
我編輯的信息能夠幫助您瞭解我的問題嗎? –