首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ImageButton中检查和更改图像

如何在ImageButton中检查和更改图像
EN

Stack Overflow用户
提问于 2017-05-03 05:36:43
回答 1查看 411关注 0票数 1
代码语言:javascript
复制
public class MainActivity extends AppCompatActivity {

    ImageButton[] ib;
    int i = 0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ib = new ImageButton[10];

        for (int i = 0; i < ib.length; i++) {
            {
                String buttonID = "imageButton" + (i + 1);
                int resID = getResources().getIdentifier(buttonID, "id", getPackageName());
                ib[i] = ((ImageButton) findViewById(resID));
                ib[i].setOnClickListener(this);

            }
        }
    }

    public void onClick(View v) {

        for (int i = 0; i < ib.length; i++) {
            if (ib[i].getId() == v.getId()) {
                ib[i].setImageResource(R.drawable.img_b);
            }
            if (ib[2].getDrawable().getConstantState() == getResources().getDrawable(R.drawable.img_b).getConstantState()) {
                ib[1].setImageResource(R.drawable.img_c);
            }

        }

    }
}

有10个ImageButtons带有‘img_a’。如果我单击其中一个ImageButtons,img_a将更改为img_b。

现在我想添加的是,如果单击ib2或imagebutton2,ib1将更改为img_c。我使用了getDrawable().getConstantState()。它没有错误,但它不工作。有人能帮帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2017-05-03 06:31:47

如果您只需要在单击imagebutton2时应用更改,请执行以下操作

代码语言:javascript
复制
public void onClick(View v) {

    for (int i = 0; i < ib.length; i++) {
        if (ib[i].getId() == v.getId()) {
            ib[i].setImageResource(R.drawable.img_b);
        }
    }
    if (v.getId() = R.id.imageButton2) {
        ib[1].setImageResource(R.drawable.img_c);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43747638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档