2014-02-13 60 views

回答

1

上的onCreate(),你可以做到這一點,從您的5個背景隨機選擇一個背景:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    // Initialize your activity and it's componments 
    setContentView(R.layout.splash); 
    ... 

    // Randomise a background 
    int[] yourListOfImages= {R.drawable.image1, R.drawable.image2, R.drawable.image2, R.drawable.image3, R.drawable.image5}; 

    Random random = new Random(System.currentTimeMillis()); 
    int posOfImage = random.nextInt(yourListOfImages.length - 1); 

    ImageView imageView= (ImageView) findViewById(R.id.imageView); 
    imageView.setBackgroundResource(yourListOfImages[posOfImage]); 
} 

你可以使用無限數量的圖像

+0

在這個我不能設置佈局(setContentView(R.layout.Splash))..? – Amardeepvijay

+0

當然,你必須設置它。 – GhoRiser

+0

得到這個錯誤:java.lang.RuntimeException:無法啓動活動,android.util.AndroidRuntimeException:requestFeature()必須在添加內容之前調用 – Amardeepvijay

2

你可以使用一個int數組和你要使用的drawables的id。存儲您在SharedPreference中顯示的最後一個drawable的索引,並在應用程序啓動時檢索它,將其增加並再次存儲。

1

我認爲你可以在你的資源中有一些圖像,然後你可以隨機設置啓動畫面的圖像。

這裏是隨機設置ImageView的圖像資源的例子:您的活動

ImageView imgView = new ImageView(this); 
Random rand = new Random(); 
int rndInt = rand.nextInt(n) + 1; // n = the number of images, that start at idx 1 
String imgName = "img" + rndInt; 
int id = getResources().getIdentifier(imgName, "drawable", getPackageName()); 
imgView.setImageResource(id); 
相關問題