Android-响应按键点击事件

【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) 

Android-响应按键点击事件

  1.匿名内部类
  2.自定义事件监听类
  3.由Activity实现OnClickListener接口
  4.在布局文件中组件添加onClick属性

   文章开始前, 我们需要先创建一个空的工程, 并在UI界面中添加一个按键.

    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

1.匿名内部类

public class MainActivity extends AppCompatActivity {

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

        Button btn = findViewById(R.id.btn);
        btn.setOnClickListener(new View.OnClickListener() {
		    @Override
		    public void onClick(View v) {
		        //此处编写处理操作.
		    }
});
    }
}

2.自定义事件监听类

public class MainActivity extends AppCompatActivity {

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

        Button btn = findViewById(R.id.btn);
        btn.setOnClickListener(new CustomClickListener());
    }
	
    private class CustomClickListener implements View.OnClickListener{

        @Override
        public void onClick(View v) {
			//此处编写处理操作.
        }
    }
}

3.由Activity实现OnClickListener接口

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

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

        Button btn = findViewById(R.id.btn);
        btn.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.btn:
                //此处编写处理操作.
                break;
            default:
                break;
        }
    }

}

4.在布局文件中组件添加onClick属性

xml文件:
    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="btnClick"/>

Activity文件:

public class MainActivity extends AppCompatActivity{

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

        Button btn = findViewById(R.id.btn);
    }

    public void btnClick(View view) {
         //此处编写处理操作.
    }
}

你可能感兴趣的:(Android)