RadioButton(单选按钮)与CheckBox(复选框)都是Button的子类,Button的所有属性二者都可用,唯一不同的是二者多一个android:checked的属性,下面的程序中添加了一个RadioGroup按钮,包括两个RadioButton,RadioGroup有自己的唯一的ID标识,RadioButton也有自己的唯一的ID标识。彼此不同。本文中对该RadioGroup设置了一个事件监听
rg.setOnCheckedChangeListener(new CheckedChangeListener()
{ @Override
public void OnCheckedChanged(RadioGroup group,int CheckedId)
{ String tip =checkedId==R.id.male?"你是男生":"你是女生"
tv.setText("tip");
}
})
==============================================================================
xml文件如下:
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="性别:" />
<RadioGroup
android:id="@+id/rg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="85dp"
android:layout_toRightOf="@+id/textView1" >
<RadioButton
android:id="@+id/male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="男" />
<RadioButton
android:id="@+id/female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女" />
</RadioGroup>
<TextView
android:id="@+id/show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/checkBox3"
android:layout_marginTop="38dp"
android:text="" />
==========================================================================
java文件如下:
package com.example.radiobutton_checkbox;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
public class MainActivity extends Activity {
private RadioGroup rg;
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rg=(RadioGroup)findViewById(R.id.rg);
tv=(TextView)findViewById(R.id.show);
rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
String tip=checkedId==R.id.male?"您是男人":"你是女人";
tv.setText(tip);
}
});
}
@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;
}
}
==================================================================
rg.setOnCheckedChangeListener(new CheckedChangeListener()
{ @Override
public void OnCheckedChanged(RadioGroup group,int CheckedId)
{ String tip =checkedId==R.id.male?"你是男生":"你是女生"
tv.setText("tip");
}
})
==============================================================================
xml文件如下:
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="性别:" />
<RadioGroup
android:id="@+id/rg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="85dp"
android:layout_toRightOf="@+id/textView1" >
<RadioButton
android:id="@+id/male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="男" />
<RadioButton
android:id="@+id/female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女" />
</RadioGroup>
<TextView
android:id="@+id/show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/checkBox3"
android:layout_marginTop="38dp"
android:text="" />
==========================================================================
java文件如下:
package com.example.radiobutton_checkbox;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
public class MainActivity extends Activity {
private RadioGroup rg;
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rg=(RadioGroup)findViewById(R.id.rg);
tv=(TextView)findViewById(R.id.show);
rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
String tip=checkedId==R.id.male?"您是男人":"你是女人";
tv.setText(tip);
}
});
}
@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;
}
}
==================================================================