Android使用者介面之常用控制元件RadioGroup、CheckBox 2018/8/10
常用控制元件
提要:我學習的這個控制元件用法流程大概是這樣的。利用入門的介面卡傳遞資料。相應的還有一個資料類。接下來,建立一個活動並新建一個佈局相對應。基本上的控制元件都可以按這個思路進行。接下來是CheckBox控制元件。
公用部分
在MainActivity:
private ArrayAdapter<ListCellData> adapter;//類為ListCellData,在後文建立的。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
adapter = new ArrayAdapter<ListCellData>(this, android.R.layout.simple_list_item_1);//預設是系統的android佈局
setListAdapter(adapter);
adapter.add(new ListCellData(this, "RadioGroup", new Intent(this, AtyUsingRadioGroup.class)));//新增控制元件及啟動活動,再後文的類中定義其中的方法。
adapter.add(new ListCellData(this, "CheckBox", new Intent(this, AtyUsingCheckBox.class)));
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
ListCellData data = adapter.getItem(position);
data.StartActivity();// 定義點選方法啟動每一個Item的活動
}
新建的資料類,中有Intent作引數啟動其他活動:
public class ListCellData { // 此類在前文用到
public ListCellData(Context context,String contrlsName,Intent relatedIntent){
this.contrlsName = contrlsName;//控制元件名
this.context = context;//上下文
this.relatedIntent = relatedIntent;//Intent,在MainActivtiy利用new Intent(MainActivity.this,元件名.class)啟動活動
}
private String contrlsName = "";
public String getContrlsName() {
return contrlsName;
}
private Context context =null;
public Context getContext() {
return context;
}
private Intent relatedIntent = null;
public Intent getRelatedIntent() {
return relatedIntent;
}
public void StartActivity(){
getContext().startActivity(getRelatedIntent());
}
@Override
public String toString(){
return getContrlsName();
}
}
一、RadioGroup
在RadioGroup中:
public class AtyUsingRadioGroup extends Activity {
private RadioButton radioRight;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aty_using_radiogroup);
radioRight =(RadioButton) findViewById(R.id.radioRight);
findViewById(R.id.btnSubmit).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(radioRight.isChecked()){
new AlertDialog.Builder(AtyUsingRadioGroup.this).setTitle("判斷").setMessage("回答正確").setPositiveButton("關閉",null).show();
}else {
new AlertDialog.Builder(AtyUsingRadioGroup.this).setTitle("判斷").setMessage("回答錯誤").setPositiveButton("關閉",null).show();
}
}
});
}
}
在xml佈局中:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="android牛逼不?" />
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/radioRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="6" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="不6" />
<RadioButton
android:id="@+id/radioButton3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="不知道" />
</RadioGroup>
<Button
android:id="@+id/btnSubmit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="提交" />
</LinearLayout>
二、CheckBox
在CheckBox中:
public class AtyUsingCheckBox extends Activity {
private CheckBox cbRB,cbHSR,cbHSPG,cbDoufu;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aty_using_checkbox);
cbDoufu = (CheckBox) findViewById(R.id.cbDoufu);
cbHSR = (CheckBox) findViewById(R.id.cbHSR);
cbHSPG = (CheckBox) findViewById(R.id.cbHSPG);
cbRB = (CheckBox) findViewById(R.id.cbRB);
findViewById(R.id.btnSubmit).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String str ="中午要吃的東西有:\n";
if(cbRB.isChecked()){
str+="肉餅\n";
}
if(cbHSR.isChecked()){
str+="紅燒肉蓋飯\n";
}
if(cbHSPG.isChecked()){
str+="紅燒排骨蓋飯\n";
}
if(cbDoufu.isChecked()){
str+="豆腐蓋飯\n";
}
new AlertDialog.Builder(AtyUsingCheckBox.this).setTitle("結果").setMessage(str).setPositiveButton("關閉",null).show();
}
});
}
}
在xml中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="中午你打算吃什麼" />
<CheckBox
android:id="@+id/cbRB"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="肉餅" />
<CheckBox
android:id="@+id/cbHSR"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="紅燒肉蓋飯" />
<CheckBox
android:id="@+id/cbHSPG"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="紅燒排骨蓋飯" />
<CheckBox
android:id="@+id/cbDoufu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="豆腐蓋飯" />
<Button
android:id="@+id/btnSubmit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="提交" />
</LinearLayout>
相關文章
- Android開發之RadioGroup與RadioButton控制元件使用Android控制元件
- 圖形使用者介面2:常用控制元件控制元件
- android之 控制元件常用的屬性Android控制元件
- 驗證使用者必選CheckBox控制元件控制元件
- ANDROID 控制元件常用屬性Android控制元件
- Android 介面(1):UI 開發控制元件AndroidUI控制元件
- Flutter控制元件-- CheckBox 和 CheckboxListTileFlutter控制元件
- WPF CheckBox控制元件 我全都要控制元件
- Android常用控制元件-BannerView(無限輪播圖控制元件)Android控制元件View
- 【Android開發入門教程】四.使用者介面之LayoutAndroid
- Android MD控制元件之CardViewAndroid控制元件View
- Android View系列---RadioGroup與RadioButtonAndroidView
- 為DataGrid新增CheckBox控制元件 (轉)控制元件
- Android自定義view之實現帶checkbox的SnackbarAndroidView
- java8之後的介面Java
- Android 5.0以上系統常用控制元件著色指南Android控制元件
- Android中自定義CheckboxAndroid
- Android自定義控制元件之自定義組合控制元件Android控制元件
- 最牛WinRT使用者介面控制元件Essential Studio for WinRT控制元件
- MFC 之使用者登入介面
- Android RadioGroup多行顯示,解決單選問Android
- Java8之Stream常用操作方式Java
- Android開發之Spinner控制元件使用Android控制元件
- Android中常用介面卡及定義自己的介面卡Android
- Android Switch控制元件(在android2.2 api8及以上使用)Android控制元件API
- Android 中的 Checkbox 詳解Android
- Excel VBA - 控制元件與使用者窗體 及 常用函式Excel控制元件函式
- Android開發之常用佈局Android
- Android常用抓包工具之TcpDumpAndroidTCP
- Java8新特性探索之Stream介面Java
- android之豎直滾動控制元件-ListViewAndroid控制元件View
- Android控制元件之ConstraintLayout詳解Android控制元件AI
- 【組合控制元件】android自定義控制元件之帶文字的ImageView控制元件AndroidView
- Android ViewGroup&&RadioGroup 換行流式標籤佈局AndroidView
- Android自定義控制元件之基本原理Android控制元件
- Android自定義控制元件之自定義屬性Android控制元件
- Android自定義控制元件系列之基礎篇Android控制元件
- Flutter常用控制元件-ImageFlutter控制元件