天天看點

RadioButton 設定Margin間距

在RadioGroup下動态添加的RadioButton不能設定間距,試了很多種方案也是不行。

以下代碼與我的寫的類似

源碼 :

layout

<RadioGroup android:id="@+id/rg_nav"       
android:orientation="vertical"      
android:layout_width="wrap_content"      
android:layout_height="wrap_content">
</RadioGroup>      

activity  

float density = getResources().getDisplayMetrics().density;

rg_nav = (RadioGroup) findViewById(R.id.rg_nav);

LinearLayout.LayoutParams params_rb = new LinearLayout.LayoutParams(
	(int)(*density),
	(int)(*density));
int margin = (int)(*density);
params_rb.setMargins(margin, margin, margin, margin);

for(String url : product.list_url_pic){

    RadioButton radio_btn = new RadioButton(ProductHome.this);  
    radio_btn.setButtonDrawable(R.drawable.rb_nav);
    radio_btn.setId(rb_id++);
    rg_nav.addView(radio_btn, params_rb);
}      

打開顯示布局 看仍然是沒有設定margin的。

後來我在用radioBtn.getParams();結果會報空指針異常。

解決方案 :

最後在stackoverflow找到了解決方案。其實隻要把

LinearLayout.LayoutParams 改成 RadioGroup.LayoutParams 就可以了

繼續閱讀