有人可以提供这样的代码,或者至少知道如何制作这样的壁纸。 我想我必须使用Vieflipper,但我不能使用Random。我对吗?谢谢。
答案 0 :(得分:0)
您的问题看起来有点不明确。在任何情况下,简单来说,假设您有一个想要以随机方式动态更改的ImageView。结构看起来应该是这样的:
imv = (ImageView)findViewById(R.id.imageView1);
Resources rsrc= getResources();
imid = R.drawable.yourimagename;
Drawable drawable= rsrc.getDrawable(imid);
Bitmap bm = BitmapFactory.decodeResource(rsrc,drawable);
imv.setImageBitmap(bm);
在这个例子中,imid是硬编码的,但你可以很容易地改变它。例如,创建一个包含所需图像ID的整数数组列表,然后在循环中或在满足条件时(例如每30秒)访问它们。
例如:
ArrayList<Integer> listofimagesids = new ArrayList<Integer>;
listofimagesids.add(R.drawable.yourimagename1)
listofimagesids.add(R.drawable.yourimagename2)
...
listofimagesids.add(R.drawable.yourimagenameN)
Random rand = new Random();
if (youcondition){
int n = rand.nextInt(listofimagesids.size());
Drawable drawable= rsrc.getDrawable(n);
Bitmap bm = BitmapFactory.decodeResource(rsrc,drawable);
imv.setImageBitmap(bm);
}
当然这只是伪代码,但它可能会引导你一点。希望它有所帮助。