首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓更改ImageButton镜像

安卓更改ImageButton镜像
EN

Stack Overflow用户
提问于 2015-05-14 14:12:42
回答 2查看 104关注 0票数 0

我写了一个旅游APP.There是20二维码在每个地方。

当游客使用二维码扫描仪扫描二维码时,ImageButton的图像必须转换为另一幅图像。

这一行的问题是: spot1.setImageResource(R.drawable.hotspot1);

如果我删除这一行,没有问题。

我不知道该怎么解决它。

代码语言:javascript
复制
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data);
     if (0 == requestCode && null != data && data.getExtras() != null) {
     String result = data.getExtras().getString("la.droid.qr.result");
     int spotnum=Integer.valueOf(result);
     switch(spotnum){
        case 1:
            ImageButton spot1=(ImageButton)findViewById(R.id.imageButton1);
            spot1.setImageResource(R.drawable.hotspot1);
            setContentView(R.layout.hotspot1);
            break;
        case 2:
            setContentView(R.layout.hotspot2);
            break;
   }
  }
 }

这是我的日志:http://i.stack.imgur.com/6y2UQ.png

EN

回答 2

Stack Overflow用户

发布于 2015-05-14 14:20:33

在调用setContentView之前,不能从xml初始化任何视图:

代码语言:javascript
复制
setContentView(R.layout.hotspot1);
ImageButton spot1=(ImageButton)findViewById(R.id.imageButton1);
spot1.setImageResource(R.drawable.hotspot1);
票数 1
EN

Stack Overflow用户

发布于 2015-05-14 14:21:48

设置view resource后,不能调用setContentView。在onCreate中调用一次set,而不从contentView设置任何视图。

然后,您可以更改布局内容,但不要再次调用setContentView

您正在使用image view,但没有在它之前调用setContentView。这使得ImageView为null,因此出现错误。

试着按照上面的建议去做,它会成功的。祝你编码愉快。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30230498

复制
相关文章

相似问题

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