【问题标题】:Android - Unexpected layoutAndroid - 意外的布局
【发布时间】:2014-10-13 10:27:44
【问题描述】:

我在 android 开发方面没有太多经验。这是我的代码:

public void onClick(View v) {

    switch(v.getId()){

    case R.id.categoriaA1:
        myAvatar.setBackgroundResource(R.drawable.cata1);

    case R.id.categoriaA2:
        myAvatar.setBackgroundResource(R.drawable.cata2);
    case R.id.categoriaA3:
        myAvatar.setBackgroundResource(R.drawable.cata3);
    case R.id.categoriaA4:
        myAvatar.setBackgroundResource(R.drawable.cata4);
    }

myAvatar 是一个 ImageView。 当我单击四个 imageButton 之一时,结果始终相同:Case R.id.categoriaA4。 为什么??

【问题讨论】:

  • 为每个语句添加中断..
  • experience in android development - 我想说switch/case 几乎适用于所有语言,所以我建议先阅读一些有关 Java 基础知识的教程。
  • 许多语言不使用break;。例如,许多学习 Java 的开发人员都来自 Visual Basic。
  • 感谢西蒙的理解

标签: android layout imageview imagebutton


【解决方案1】:

您需要将break 添加到每个案例。喜欢

  switch(v.getId()){

case R.id.categoriaA1:
    myAvatar.setBackgroundResource(R.drawable.cata1);
    break;

case R.id.categoriaA2:
    myAvatar.setBackgroundResource(R.drawable.cata2);
    break;
case R.id.categoriaA3:
    myAvatar.setBackgroundResource(R.drawable.cata3);
    break;
case R.id.categoriaA4:
    myAvatar.setBackgroundResource(R.drawable.cata4);
    break;
}

【讨论】:

    猜你喜欢
    • 2021-10-27
    • 2021-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-19
    • 2020-02-05
    • 2013-09-04
    • 2018-11-06
    相关资源
    最近更新 更多