2017-03-09 3 views
1

メソッドsetBackgroundColorに複数の色を設定する方法について少しアドバイスが必要ですが、複数の色を作成することはできますが、あなたは何ができるか4か5特定の色をしたいので、作るさメソッドに複数の色を設定したいsetBackgroundColor()

if (isSelected) 
    style.setBackgroundColor (new Color ((float) Math.random(), 
             (float) Math.random(), 
             (float) Math.random())); 
    else 
    style.unsetBackgroundColor(); 
+0

どのように複数の背景色を設定しますか?実際にどの色が背景色として使用されるのでしょうか? –

+0

実際にフレーム全体の背景色ではなく、フレーム上に表示される1つのオブジェクトの背景色です。そのオブジェクトをクリックすると、そのオブジェクトの色が変わるはずです。そのため、複数の色が必要です私はクリックでそれを変えることができた – Mapet

答えて

0

(そのように選択されたオブジェクトの上に、それは色が変化) :私はここのコードの私の一部であり、特定の4または5色を設定したいですリスト。

ArrayList<Color> colorList = new ArrayList<Color>(); 
//Then you add any colors you want, although you would have to define them yourself. 
colorList.add(color1); 

カラーリストにカラーを追加した後、ランダムなカラーを取得する方法が必要です。私たちがこれを行う方法の1つは、Randomオブジェクトを作成し、それを使って0からリストのサイズまでIntegerを見つけることです。

Random rand = new Random(); 
int colorNum = rand.nextInt(colorList.size()); 

実際の番号がわかったので、リスト内のそのインデックスに簡単にアクセスできます。

Color c = colorList.get(colorNum); 
//Now, assuming your code above works for one color, you could do your 
style.setBackgroundColor(c); 

この方法であなたは、任意の色を追加したり、ユーザの要求に基づいて色を作り、それは限り、あなたはリストに追加して任意の色を扱うことになることができます。

+0

Raheel138ありがとう、それは働いた:) – Mapet

関連する問題