2016年11月8日 星期一 天氣晴
? 今天我們學(xué)習(xí)了radiobutton的用法和radiogroup的用法位隶。
Radiogroup為按鈕組帅掘,而radiobutton為其中的一個按鈕杠河。
在activity_main中先去修改布局的方式茅茂,將其修改為線性布局誓斥,增加總體的布局方式為垂直布局婴氮,再加入一個radiogroup并將其命名為radiogroup將寬度和高度設(shè)置為自動斯棒,設(shè)置方位為水平方位。
在radiogroup下添加一控件為radiobutton主经,將其命名為radiobutton1荣暮,寬高設(shè)為自動,添加控件的文本為男罩驻,設(shè)置初始選中為true穗酥,android:checked="true"。
添加第二個控件還是radiobutton將其命名為radiobutton2惠遏,寬高設(shè)為自動砾跃,添加控件的文本為女。
在控件的下方添加一個文本节吮,為選中的目標(biāo)進行提示抽高,首先需要將這個文本控件進行命名,為textview1透绩,寬高都為自動翘骂,其中的文字需要引用valuse中string,hello_world后面的文字帚豪,作為初始字碳竟。在string文件中,需要修改hello_world后的文字為選擇男或女狸臣。
在mainActivity中設(shè)置文本控件和按鈕控件的變量設(shè)置為privateRadioGroup rGroup;private TextView tView莹桅;
在setContentView(R.layout.activity_main);下對rGroup和tView進行賦值rGroup=(RadioGroup)findViewById(R.id.RadioGroup);??
tView=(TextView)findViewById(R.id.textView1);
用更名內(nèi)置的方法進行監(jiān)聽,rGroup烛亦。
rGroup.setOnCheckedChangeListener(newRadioGroup.OnCheckedChangeListener()诈泼。
用switch來設(shè)置點擊后顯示的文本懂拾。
switch(arg1)case R.id.RadioButton1:tView.setText("男被選中");break;case R.id.RadioButton2:tView.setText("女被選中");
<RadioGroup
android:id="@+id/radiogroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:checked="true">
<RadioButton
android:id="@+id/radiobutton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="man"/>
<RadioButton
android:id="@+id/radiobutton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="woman"/>
</RadioGroup>
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
//定義變量
private RadioGroup rGroup;
private TextView tView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//賦值
rGroup=(RadioGroup) findViewById(R.id.radiogroup1);
tView=(TextView) findViewById(R.id.textview1);
//用命名內(nèi)部類的方法綁定監(jiān)聽
rGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(RadioGroup arg0, int arg1) {
// TODO Auto-generated method stub
switch(arg1)
{
case R.id.radiobutton1:tView.setText("man has selected!");break;
case R.id.radiobutton2:tView.setText("women has selected!");
}
}
});
}
}
然后還學(xué)習(xí)了listview
首先新建一個project在valuse中設(shè)置strings文件中hello_world后的文字厂汗,將其設(shè)置為手機拼配目錄委粉。
在layout中的xml文件中設(shè)置布局方式為垂直布局方式,設(shè)置一個控件為文本空間娶桦,寬高為自定義贾节,文本顯示的信息引用string的hello_world,這樣就會顯示需要的文字衷畦。
添加一個ListView的點擊事件栗涂,命名為listview01,寬高自定義祈争。
在mainactivity中定義一個變量斤程,privateListViewlView;獲取其中的控件lView=(ListView)findViewById(R.id.listview1);
用string生成數(shù)據(jù)源
Stringdata[]={"蘋果","三星","華為","HTC","小米"};將數(shù)據(jù)源移動到適配器中
ArrayAdapterarrayAdapter= newArrayAdapter(this,android.R.layout.simple_list_item_1,data);
將適配器綁定給類表控件lView.setAdapter(arrayAdapter);
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
/>
<ListView
android:id="@+id/listview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ListView>
//定義變量private ListView lView;? ? @Override? ? protected void onCreate(Bundle savedInstanceState) {? ? ? ? super.onCreate(savedInstanceState);? ? ? ? setContentView(R.layout.activity_main);? ? ? ? ? ? ? //獲取控件? ? ? ? lView=(ListView) findViewById(R.id.listview1);? ? ? ? ? ? ? ? //生成數(shù)據(jù)源? ? ? ? final String data[]={"華為","三星","蘋果","小米"};? ? ? ? ? ? ? ? //將數(shù)據(jù)源封裝到適配器中? ? ? ? ArrayAdapter arrayAdapter=new ArrayAdapter(this,R.layout.listview,R.id.textview2, data);
//將適配器綁定給列表控件
lView.setAdapter(arrayAdapter);
lView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
String msg=data[arg2];
Toast.makeText(MainActivity.this, msg,3000).show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
listview的布局方式除了可以用系統(tǒng)自帶的,也可以自己編寫
<TextView
android:id="@+id/textview2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#FFFFE0"
android:textSize="20sp"
>
</TextView>
利用Toast語句實現(xiàn)反饋
Toast.makeText(MainActivity.this, msg,3000).show();