2017-07-26 94 views
2

這是我的代碼的摘錄:如何設置隨機顏色

Color[] color = new Color[3]; 
color [0] = Color.red; 
color[1] = Color.blue; 
color[2] = Color.yellow; 
stage.getBatch().setColor(color[rand.nextInt()]); 

但 「顏色[rand.nextInt());」加下劃線爲紅色。我真的不知道爲什麼。例如在括號中必須有四個數字或者代替「Color.BLUE」,但我想隨機對該精靈着色。因此我創建了三種顏色的數組。我想通過給他們數字和使用rand.nextInt它會工作。什麼是錯誤?

+0

這會對你有所幫助:https://stackoverflow.com/questions/40284802/how-to-output-a-random-color-from-a-set-of-selected-colors-in-java- android/40373178#40373178 –

+1

給代碼加下劃線的紅色的實際編譯器錯誤信息是什麼? –

+0

錯誤信息:「Can not resolve method'setColor(java.awt.Color)' – user8340536

回答

3

可以產生這樣的隨機顏色:

Random rnd = new Random(); 
int color = Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256)); 
+0

如果我在Android Studio中編寫代碼,argb是紅色的,所以有一個錯誤 – user8340536

+0

https://stackoverflow.com/a/4246418/5354875 相當簡單的方法可能做到這一點!也看到這個答案,它使得你能夠選擇只有明亮或黑暗的顏色時,獲得隨機的 – koksalb

+0

什麼是錯誤信息? –

1

提供的錯誤消息Error message: "Cannot resolve method 'setColor (java.awt.Color)'它看起來像你正在使用Libgdx的SpriteBatch的顏色不對類。

您需要將進口改爲com.badlogic.gdx.graphics.Color

此外,爲了正確地隨機從3種顏色選擇,你需要使用rand.nextInt(color.length)到綁定的隨機生成的int數組中元素的個數。