java - 一个改变图像的按钮android

标签 java android

我有一个用于测试的应用程序,无论如何,我有一个按钮和图片,当我按下按钮时,图片应该不断变化,然后重置为第一个,依此类推,下面的代码给出了解释

        Button chngbutn = (Button) findViewById(R.id.Bchangepic);
     iv = (ImageView) findViewById(R.id.IVviewer);

    chngbutn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

            int change=0;

            if(change==0){
                iv.setImageResource(R.drawable.image);
                change++;
            }
            else if (change==1){
                iv.setImageResource(R.drawable.imageb);
                change=2;
            }else if (change==2){
                iv.setImageResource(R.drawable.imagec);
                change=0;
            }  

iv 位于 oncreate 括号之外..

但是这种编码的问题是它只改变图像一次并卡在 imageb 上

在此之前我尝试了 switch 语句 使用下面的代码

            switch (change){

            case 1:
                iv.setImageResource(R.drawable.spacey_b);
                change++;
                break;
            case 2:
                iv.setImageResource(R.drawable.spacey_c);
                change++;
                break;
            case 3:
                iv.setImageResource(R.drawable.spacey);
                change=0;
                break;                  
            }

但是在 switch 中它没有做任何事情,有什么帮助吗?

最佳答案

您的 int change = 0; 也应该位于 onCreate 之外,否则您将始终获得 0 值。

关于java - 一个改变图像的按钮android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20019220/

相关文章:

java - 将 JAVA_HOME 添加到 Linux - 正确方法

java - Hadoop - 如何发射 TwoDArrayWritable

android - 当系统关闭时,我的应用程序可以收到通知吗?

android - 如何在自定义listView上设置CHOICE_MODE_MULTIPLE

java - 无法部分比较 Karate 框架中的两个 Json

java - 如何将列表中的get(0)转换为常量并获取值

java - 获取错误膨胀类工具栏

android - 为什么 Activity 的内容没有出现(在 android 中)?

java - 在 native Wicket 项目中使用 Maven 存储库

android - 通过 AsyncTask 在 onCreate() 期间加载数据