2017-02-01 7 views
0

アプリの背景をランダムに変更したいと思います。それは背景として自分のフォルダからランダムなイメージを持っているはずです。それはいくつかのデバイスでは完全に動作しますが、一部のデバイスでは動作しません。私はこの矛盾を引き起こす可能性があるのだろうか。ここに私のランダムなバックグラウンドジェネレータクラスです:Android - カスタム背景画像

public class arkaplanGenerator { 
public static int arkaplan(){ 
    int sonucArkaplan = 0; 
    Random r = new Random(); 
    int sayi = r.nextInt(11); 
    switch (sayi){ 
     case 0: 
      sonucArkaplan = R.drawable.bavaria; 
      break; 
     case 1: 
      sonucArkaplan = R.drawable.gorges; 
      break; 
     case 2: 
      sonucArkaplan = R.drawable.more; 
      break; 
     case 3: 
      sonucArkaplan = R.drawable.mountains; 
      break; 
     case 4: 
      sonucArkaplan = R.drawable.pisa; 
      break; 
     case 5: 
      sonucArkaplan = R.drawable.sea; 
      break; 
     case 6: 
      sonucArkaplan = R.drawable.sunset; 
      break; 
     case 7: 
      sonucArkaplan = R.drawable.sunset2; 
      break; 
     case 8: 
      sonucArkaplan = R.drawable.wai; 
      break; 
     case 9: 
      sonucArkaplan = R.drawable.water; 
      break; 
     case 10: 
      sonucArkaplan = R.drawable.waterfall; 
      break; 
    } 
    return sonucArkaplan; 
} 

そして、ここで私は私のメインの活動でそれを使用する方法である:

LinearLayout linearLayout = (LinearLayout)findViewById(R.id.activity_main); 
linearLayout.setBackground(getResources().getDrawable(arkaplanGenerator.arkaplan())); 

これらの画像は、事前に描画可能folder.Thanksです。

+1

問題のあるデバイスと正確に何か問題があるかについての情報がないと(スタックトレース?)、あなたを助けることはほとんど不可能です。 – Divers

答えて

0

ResourcesクラスのgetDrawableメソッドは推奨されていません。 ContextCompat

linearLayout.setBackground(ContextCompat.getDrawable(getApplicationContext(),arkaplanGenerator.arkaplan())); 
+0

これが問題であるかどうか確信していません。非推奨とは、動作しないという意味ではありません。 – AnixPasBesoin