单选按钮 && 消息框(通常作为提示使用)
RadioButton单选按钮
1、和RadioGroup配合使用,一个RadioGroup里面容纳多个RadioButton
下面这个代码 android:text="@string/pirates",这里其实可以直接写 android:text=“男”,这里的@sting是什么呢,它对应的是values里面的内容
<resources>
<string name="app_name">qq</string>
<string name="pirates">男</string>
<string name="ninjas">女</string>
<string name="other">其他</string>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RadioButton android:id="@+id/radio_pirates"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pirates"
android:onClick="onRadioButtonClicked"/>
<RadioButton android:id="@+id/radio_ninjas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/ninjas"
android:onClick="onRadioButtonClicked"/>
<RadioButton android:id="@+id/radio_other"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/other"
android:onClick="onRadioButtonClicked"/>
</RadioGroup>
接下来是Java部分的代码,(R.layout.radiobutton)我的文件命名是radiobutton,你的文件是什么就改成什么。
onRadioButtonClicked这是一个回调函数(on开头就是一个回调函数)
单选按钮的事件名称都是onRadioButtonClicked这个要注意
case R.id.radio_pirates:用switch语句判断你点击是否是男,还是女还是其他
Toast.makeText(MainActivity.this,“男”,Toast.LENGTH_SHORT).show();
这个Toast.makeText(context, text, duration);就是我们要讲的消息框
可以看到这个消息框有是三个参数:应用 Context、文字消息和消息框时长
消息框时长:只有两种选择 | Toast.LENGTH_SHORT(短时间) | Toast.LENGTH_LONG(长时间) |
---|---|---|
文字消息 (双引号引起来) | eg:“女” | |
context | 你要在MainActivity.this进行查找 |
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.radiobutton);
}
public void onRadioButtonClicked(View view) {
switch(view.getId()) {
case R.id.radio_pirates:
Toast.makeText(MainActivity.this,"男",Toast.LENGTH_SHORT).show();
break;
case R.id.radio_ninjas:
Toast.makeText(MainActivity.this,"女",Toast.LENGTH_SHORT).show();
break;
}
}
}
他们最终产生的效果就是,当我们点击按钮的时候,会弹出消息框,然后消息框的内容就是,我们点击对应按钮时我们要他显示的内容。