每次应用启动时,Android启动画面都会显示不同的图像

时间:2014-02-13 13:25:38

标签: android

我正在制作一个显示4到5秒的闪屏,然后会出现登录屏幕 如何在启动画面中存储4到5个图像?

我想在每次用户启动应用程序时更改启动画面图像 我怎么能这样做?

3 个答案:

答案 0 :(得分:2)

你可以使用一个int数组,其中包含你想要使用的drawable的id。存储您在SharedPreference中显示的最后一个drawable的索引,并在应用程序启动时检索它,将其递增并再次存储。

答案 1 :(得分: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); 

答案 2 :(得分: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]);
}

您可以使用无限数量的图像