一、按钮(Button)
1、响应点击事件 onClick
布局:
<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage" />
Activity:
public void sendMessage(View view) {
// button单击响应事件
}
2、、程序化监听 OnClickListener
布局:
<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
/>
Activity:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button)findViewById(R.id.button_send);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//button 单击响应事件
}
});
}
3、多个点击事件监听简化方式 implements View.OnClickListener
Activity:
package com.example.ui;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
//实现界面上点击事件监听
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button)findViewById(R.id.Button1);
button.setOnClickListener(this);
}
public void onClick(View v){
switch(v.getId()){
case R.id.Button1:
Toast.makeText(this,"按钮响应", Toast.LENGTH_SHORT).show();
break;
default:
Toast.makeText(this,"默认响应", Toast.LENGTH_SHORT).show();
break;
}
}
}
二、编辑框(EditText)
布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="登录界面"
android:textColor="#ff0000"
android:textSize="17sp"
android:textStyle="bold" />
<EditText
android:id="@+id/edit_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入用户名"/>
<EditText
android:id="@+id/edit_pass"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入密码"/>
<Button
android:id="@+id/Button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Login"
android:textAllCaps="false"/>
</LinearLayout>
Activity:
package com.example.ui;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;
//实现界面上点击事件监听
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private EditText editNanme;
private EditText editPass;
private ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button)findViewById(R.id.Button1);
editNanme = (EditText)findViewById(R.id.edit_name);
editPass = (EditText)findViewById(R.id.edit_pass);
button.setOnClickListener(this);
}
public void onClick(View v){
switch(v.getId()){
case R.id.Button1:
String name = editNanme.getText().toString().trim();
String pass = editPass.getText().toString().trim();
Toast.makeText(this,"用户名:"+name+"密码:"+pass, Toast.LENGTH_SHORT).show();
break;
default:
Toast.makeText(this,"默认响应", Toast.LENGTH_SHORT).show();
break;
}
}
}