【问题标题】:How do I reference the image returned in the random image array?如何引用随机图像数组中返回的图像?
【发布时间】:2011-04-02 16:13:45
【问题描述】:

我正在整理一些代码并尝试使用附加代码分配壁纸。 随机图像部分有效,将图像分配给墙纸有效,但我不知道如何获得显示为墙纸图像的确切图像。

public class RandomImage extends Activity implements OnClickListener{

    private Integer [] mImageIds = { 
        R.drawable.big1, 
        R.drawable.big2, 
        R.drawable.big3, 
    };

    private static final Random rgenerator = new Random();
    private ImageView iv;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.winner);

        Integer q = mImageIds[rgenerator.nextInt(mImageIds.length)];
        iv = (ImageView) findViewById(R.id.imageView1);
        iv.setImageResource(q);
        iv.setImageResource(mImageIds[rgenerator.nextInt(mImageIds.length)]);

        View setButton = findViewById(R.id.set_wallpaper);
        setButton.setOnClickListener(this);     
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.set_wallpaper:
                WallpaperManager myWallpaperManager = 
                    WallpaperManager.getInstance(getApplicationContext());
                try {     
                    //How to reference the image selected in above random array? 
                myWallpaperManager.setResource(????);   
                } catch (IOException e) { 
                    // TODO Auto-generated catch block     
                    e.printStackTrace();
                }
         }
     }
}

【问题讨论】:

    标签: android random wallpaper


    【解决方案1】:

    为什么不声明一个存储 id 的 int 类变量,例如:

    int lastImageRef;
    

    ...

    lastImageRef = mImageIds[rgenerator.nextInt(mImageIds.length)];
    iv.setImageResource(lastImageRef);
    

    ...

    myWallpaperManager.setResource(lastImageRef); 
    

    【讨论】:

    • 有效,谢谢。我还有一些其他的东西要清理,但你的解决方案有效。
    猜你喜欢
    • 2012-01-21
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    • 1970-01-01
    • 2012-03-10
    • 2012-11-02
    相关资源
    最近更新 更多