只有我的单选按钮1/2在安卓
问题描述:
工作,这是我的XML,只有我的单选按钮1/2在安卓
<RadioGroup
android:id="@+id/radioType"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal"
>
<RadioButton
android:id="@+id/RadioAuction"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="55dp"
android:textColor="#3DCC00"
android:onClick="showAuctionOptions"
android:text="@string/RadioButton1" />
<RadioButton
android:id="@+id/RadioBin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:onClick="showAuctionOptions"
android:textColor="#FF0000"
android:text="Buy it now" />
</RadioGroup>
,这是我showAuctionOptions功能,
public void showAuctionOptions(View v){
switch(v.getId()){
//execute this case if auction button is checked
case R.id.RadioAuction:
//Display start price
LinearLayout ShowPrice = (LinearLayout)findViewById(R.id.LayoutStartPrice);
ShowPrice.setVisibility(View.VISIBLE);
//Display reserve price
LinearLayout ShowReservePrice = (LinearLayout)findViewById(R.id.LayoutReservePrice);
ShowReservePrice.setVisibility(View.VISIBLE);
//Hide quantity
LinearLayout HideQuantity = (LinearLayout)findViewById(R.id.LayoutQuantity);
HideQuantity.setVisibility(View.GONE);
break;
//execute this case if buy it now button is checked
case R.id.RadioBin:
//Hide start price
LinearLayout HidePrice = (LinearLayout)findViewById(R.id.LayoutStartPrice);
HidePrice.setVisibility(View.GONE);
//Hide reserve price
LinearLayout HideReservePrice = (LinearLayout)findViewById(R.id.LayoutReservePrice);
HideReservePrice.setVisibility(View.GONE);
//Display quantity
LinearLayout DisplayQuantity = (LinearLayout)findViewById(R.id.LayoutQuantity);
DisplayQuantity.setVisibility(View.VISIBLE);
break;
}
}
我的问题是,它仅显示当拍卖单选按钮被按下时的选项。现在购买时没有任何反应。谁能帮忙?谢谢 !
答
请勿对RadioButtons
使用'onClick'侦听器。请尝试使用RadioGroup.OnCheckedChangeListener代替。不过,我认为您不能像您使用那样将其分配到XML布局文件中。
有你Activity
实现界面如下...
public class MyActivity extends Activity
implements RadioGroup.OnCheckedChangeListener {
...
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
...
}
}
然后,您需要找到RadioGroup
并设置监听器...
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioType);
radioGroup.setOnCheckedChangeListener (this);
答
您是否为RadioBin设置了onclick监听器?
RadioButton radioBin = (RadioButton) findViewById(R.id.RadioBin);
radioBin.setOnClickListener(...);
就像您为RadioAuction所做的一样?在我看来,没有RadioBin的收听者。
+0
我没有监听器RadioAuction虽然 – rusty009 2012-04-01 22:52:16
最新的XML的布局? – waqaslam 2012-04-01 22:19:37
是的,它的布局 – rusty009 2012-04-01 22:41:09
通过查看您的发布代码和xml,几乎不可能知道什么可能是错误的...您需要粘贴您的活动的所有代码和xml – waqaslam 2012-04-02 09:08:13