常用控件之按钮(button)及吐司框应用(Toast),及选择框(RadioButton(单选框))
Button
Android常用控件之一,在Android开发中经常使用,button有一个点击事件,这个便是我们今天button中的重点。
button常用的属性基本和其他差不多,button主要用于点击之后做某些工作,它有两种点击的方法
第一种:
onClick点击属性,属性里写方法名(dianji)然后到Java类写这个方法
代码如下:xml代码:
<?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" tools:context="com.example.myapplication.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第一种点击"
android:onClick="dianji"
/>
</LinearLayout>
java代码如下,并用Toast弹出,
package com.example.myapplication;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void dianji(){
Toast.makeText(this, "第一种点击方法", Toast.LENGTH_SHORT).show();
}
}
方法类型一定为void
第二种
<?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" tools:context="com.example.myapplication.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btn_main_one"
android:text="第二种点击"
/>
</LinearLayout>
java代码是利用button点击事件
package com.example.myapplication;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn_main_two=(Button)findViewById(R.id.btn_main_two);
btn_main_two.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "第二种点击方法", Toast.LENGTH_SHORT).show();
}
});
}
}
二、RadioButton
单选框,我们就要做一个demo,叫做点击那个框,弹出这个框的文字
xml代码:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.zking.g160628_android05_widget2.MainActivity"> <RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/rg_main_sex" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="男" android:id="@+id/rb_main_boy" android:checked="true" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="女" android:id="@+id/rb_main_girl" /> </RadioGroup> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="确定" android:id="@+id/btn_main_ok" />
</LinearLayout>
java代码:
package com.zking.g160628_android05_widget2; import android.app.DatePickerDialog; import android.app.TimePickerDialog; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.TimePicker; import android.widget.Toast; import java.util.Calendar; public class MainActivity extends AppCompatActivity { EditText et_main_uname; EditText et_main_upass; Button btn_main_ok; RadioGroup rg_main_sex; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件 btn_main_ok = (Button) findViewById(R.id.btn_main_ok); rg_main_sex = (RadioGroup) findViewById(R.id.rg_main_sex); //给按钮设置点击的监听 btn_main_ok.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //获取单选组中 被选中的单选框的ID int checkedId=rg_main_sex.getCheckedRadioButtonId(); //再根据被选中的单选框的ID 获取 该单选框 RadioButton radioButton= (RadioButton) findViewById(checkedId); String sex=radioButton.getText().toString(); Toast.makeText(MainActivity.this, ""+sex, Toast.LENGTH_LONG).show(); } }); } }