如何使用If else语句重新测试条件Java android

时间:2012-02-04 15:32:53

标签: java android if-statement

我正在尝试根据变量的值设置多个项目的可见性,并且按钮单击时值会更改。我是新人。

我的代码看起来像这样:

    int view = 1;

    if(view == 1) { Sets a bunch of visibilities}
    else if(view == 2) {Sets a different set of visibilities}
    else if(view ==3)...etc

然后我有一个on click监听器,它会增加变量,我希望它能再次运行IF语句。

我是一个试图自学的黑客,所以请指出正确的方向,不要求你为我编码。我相信有更好的方法可以做到这一点,让我知道该怎么做,我会做我的功课。

由于

3 个答案:

答案 0 :(得分:0)

我不确定你的代码是如何构建的,但这就是我写的方式,可以在每次点击按钮时重新运行。

onClickListener(){
     id++ // Or whatever you need to do to the id value
     codeThatSetsTheView(id)

}

codeThatSetsTheView (int viewId){
    Switch (id)
         case 1: 
             view 1  //Enable the things for view 1 
             break; 
...


}

答案 1 :(得分:0)

为什么不使用switch语句而不是300 IF / ELSE?

switch(view) {
  case 1: // implement code
    break;
  case 2: // implement code
    break;
  .....
}

在基本的,你可以使用类成员变量来处理所有这些事情更容易:

class myClass extends AnotherClass implements View.OnClickListener {
  private static int myVariable;

  public myClass(Context ctx, AttributeSet attr) {
    super(ctx,attr);

    setOnClickListener(this);
  }

  private void mySetterFunction() {
    myVariable = 1; // or set to what ever
  }

  @Override
  public void onClick(View view) {
    switch( myVariable ) {
      case 1: // do code here
        break;
      case 2: // do code here
        break;
      case 3: // do code here
        break;
    }
  }
}

答案 2 :(得分:0)

你可以做很多事情。我发现如果我想多次做某事,最好将这些动作分组到一个函数中。此外,如果您想要在单击某些内容时完成某些操作,那么这就是OnClickListener中onClick(View v)函数的要点。

最后的想法 - 如果你想要多次调用的东西(比如通过if / else块运行),请多次调用它。只需根据需要多次调用函数,并在函数调用之间执行逻辑(如递增整数变量)。