私はアプリを作る必要があり、どこかをクリックして彼の背景を変えたときのことです。どうやってやるの?そして私は、drawableフォルダを使ってそれを行うことができますか?例10個の異なるイメージを作成し、それをドロウアブル・フォルダにコピーします。どこかをクリックすると、10種類の画像をランダム化できますか? 編集 私は背景を無作為化する方法は?
REQUESTに基づいて更新答えて
開始することができますどこ私は知らないので、私は
final RelativeLayout rootLayout = (RelativeLayout)findViewById(R.id.myRootLayout);
final Random random = new Random(3); //generates 0 to 2 (as you set seed of 3 digits starting from 0)
final List<Integer> myBackgroundImages = new ArrayList<Integer>();
myBackgroundImages.add(R.drawable.add_person);
myBackgroundImages.add(R.drawable.add_photo_album);
myBackgroundImages.add(R.drawable.add_key_box);
rootLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
rootLayout.setBackground(myBackgroundImages.get(random.nextInt()); //will be 0, 1, or 2
}
});
例と、何かをしようとしなかった私はあなたを示すためにのonCreate内のすべてのこれをしませんでした例えば、上のような同じ方法でそれらをやっているのでなければ、値を確定する必要はありません。クラスとレイアウトの変数を変えてクリックリスナーを設定することをお勧めしますが、これはどのように動作するのかを十分に示すはずです。もちろん
OLD ANSWER LEFT FOR HISTORY
これを行うには多くの方法があります。データバインディングを使用している場合は、XMLファイルにバインドされているドロウアブルプロパティを持つだけで、バインディングでこれを行うことができます。
あなたはバインディングを使用していない場合は、単純にそれを更新するコードで、その後<RelativeLayout id = some id that you will use
のようなあなたのバックグラウンドのルート要素にIDを入れました。 someIdThatYouUse.setBackground(R.drawables.myDrawable1)。
ランダム化する方法を尋ねる場合は、複数の方法があります。各drawableの名前をrandom_1とrandom_2のように指定し、String num =(new Random(9).nextInt()+ 1).toString()のようなランダムジェネレータを作成することができます。
名前からリソースを取得するには、「random_」+ numという名前を付けます。 それとも、
myList.add(R.drawable.myfirstone) myList.add(R.drawable.someotherImage)のようなドロウアブルのリストを作ることができ など。
が、その後に0から乱数を作成します9.次に、rootLayout.setBackground(myList.get(randomNumber)); もちろん、OSのバージョンをチェックし、正しいsetBackgroundとsetBackgroundDrawableを使用して、あなたの最小限のサポートと互換性があることを確認してください。
希望に役立ちます。
- 1. アンドロイドスタジオでアニメーション無作為化された背景
- 2. 背景をアニメーション化する方法は?
- 3. パネルを無作為にランダム化する方法
- 4. 数字のセットを無作為化する方法
- 5. クイズ複数の選択肢を無作為化する方法
- 6. PHP配列を無作為化する
- 7. 配列を無作為化する
- 8. C++で無作為化マップ
- 9. 複数の背景の背景サイズをアニメーション化する方法
- 10. フルスクリーンで背景を作る方法は?
- 11. javascriptで背景を変える背景を作る方法
- 12. searchkickの結果を無作為化
- 13. 黒以外の色の無作為の背景色は、黒色の背景の背景としてよく見える
- 14. PHPリターン無作為化配列
- 15. 層別化と無作為抽出で
- 16. 背景イメージのトランジションをアニメーション化する方法は?
- 17. Android Studioで背景をアニメーション化する方法は?
- 18. UIViewオブジェクトを無作為に生成する方法
- 19. ユーザーイベントストリームでユーザーのp%を無作為にサンプリングする方法
- 20. ビューポートの背景またはボディタグの背景色に子要素の背景色(透明)を作る方法
- 21. リズムゲームスウィフト2の円を無作為化する
- 22. jqueryは無限ループで背景画像をアニメーション化します
- 23. HTML送信ボタンを無効にする方法背景
- 24. Ant Designでモーダルマスクの背景を無効にする方法
- 25. divを無限の背景にする方法
- 26. OpenCV:カラーカスターから背景ピクセルを無視する方法
- 27. 透明な背景を持つ透明な背景でムービーを作る方法
- 28. 背景イメージピクセル化
- 29. ユーザーをFirebaseと無作為にマッチさせる方法
- 30. 背景色を別のIsSelected背景にバインドする方法
これは問題の説明ですが、**あなたが試したことはありません**。あなたはまた** **他のすべての単語を** BOLD **する必要はありません。 – tadman