【问题标题】:Changing a Image while the app is running?在应用程序运行时更改图像?
【发布时间】:2014-01-22 11:41:34
【问题描述】:

我正在更改ImageView 背景,以在您每次按下button 时更改。我尝试将setBackGround 切换为setImageResource,但这让我将imageview 更改为常量。我不知道将 imageview 设为常量是否会有所帮助,或者是否有其他方法。

这是我目前所拥有的。

ImageView img = (ImageView) findViewById(R.id.imageView1);
    Button button = (Button) findViewById(R.id.dummy_button);
    button.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {

            img.setImageResource(R.drawable.ic_launcher);
        }
    });

【问题讨论】:

    标签: android image button imageview onclicklistener


    【解决方案1】:

    改用 setImageResource:

    img.setImageResource(R.drawable.drawablename);
    

    对于每次更换图像:

    首先声明一个imageIds数组

    public Integer[] imageIds = {
            R.drawable.image1, R.drawable.image2,
            R.drawable.image3 
    };
    

    然后在你的 onClick 方法上

        int i = 0;
        img.setImageResource(imageIds[i]);
        i = i+1;
    

    这样,当你第一次点击它时,它会得到项目1,然后i会变成1。第二次按下,图像会变成第二个,i会变成2。如果你想得到一个随机的每次。你需要声明一个 Random。

    【讨论】:

      【解决方案2】:

      试试这个:

      Button button = (Button) findViewById(R.id.dummy_button);
      button.setOnClickListener(new OnClickListener(){
       @Override
          public void onClick(View v) {
          ImageView img = (ImageView) findViewById(R.id.imageView1);
          img.setImageResource(R.drawable.ic_launcher);
          }
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-07
        • 1970-01-01
        • 1970-01-01
        • 2012-09-16
        相关资源
        最近更新 更多