如何识别特定(特定)视图,单击“动态创建视图”

时间:2013-08-07 10:16:37

标签: android

我是Android编程新手 我已经动态创建了一些Buttons,EditText并为所有这些设置了onclick监听器。 这里有一些按钮和EditText,我必须编写不同的逻辑。

如果我写

 public void onClick(View v) {

 if(v instanceof Button){     
// do some thing

 }else if(v instanceof EditText){

// do some thing
}
  }

对于所有按钮和EditText应用相同的逻辑 但我想要一些按钮和Edittext的特定逻辑。 我可以通过设置一些Editext / Buttons和Identify的标签来做到这一点 这是唯一的解决方案吗?

2 个答案:

答案 0 :(得分:0)

    in onClick you can write switch case based on id of each component (button etc):

        @Override
        public void onClick(View v) {
            switch(v.getId()){

                case R.id.camera:
                      break;

                case R.id.camera_focused:
                      break;
}

答案 1 :(得分:0)

final Button button = new Button(this);
        button.setText("Click to change second line of text");
        OnClickListener buttonListener = new View.OnClickListener() {
        boolean clicked = false;
        int numClicks = 0;
            @Override
            public void onClick(View v) {
            if(numClicks > 5)
            {
                button.setText("STOP IT");
            }
            numClicks++;
            if(clicked == false){
                clicked = true;
                tv2.setText("Text Changed on Button Click");    
            }
            else
            {
                clicked = false;
                tv2.setText("Click again");
            }

            }
        };
        button.setOnClickListener(buttonListener);