2017-02-01 10 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

이 문제가 확실하지 않습니다. Deprecated가 작동하지 않는다는 것을 의미하지는 않습니다. – AnixPasBesoin