Android RadioButton阿拉伯语(左侧文本)以编程方式

时间:2014-04-25 14:14:17

标签: android android-layout

我需要在一个无线电组中动态创建RadioButton,我已经在XML中定义了无线电组,在我进行研究之后,我找到了一些主题,将android:drawableRight="@android:drawable/btn_radio"android:button="@null"放在XML中我能以编程方式完成它们吗?

这是我的代码:

 final RadioGroup RG =(RadioGroup) vi.findViewById(R.id.RG);
 RG.removeAllViews();
 String[] answers= null;
 answers=item.Answers.split(";");
 final TextView txtTitle = (TextView) vi.findViewById(R.id.QuestionRow);
 txtTitle.setText(item.Question);
 for (int i=0;i<answers.length;i++){             

      RadioButton bt=null; 
      bt = new RadioButton(parent.getContext());
      bt.setId(i+1);
      bt.setText(answers[i]);    
      bt.setGravity(Gravity.RIGHT);             
      RG.addView(bt);
 }

这是我的XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/Questionlayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="right"
android:background="@color/White" >

 <TextView
     android:id="@+id/QuestionRow"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentLeft="true"
     android:layout_alignParentRight="true"
     android:layout_alignParentTop="true"
     android:gravity="right"
     android:textColor="@color/black_overlay"
     android:textSize="30sp"
     android:textStyle="bold" />

 <RadioGroup 
     android:id="@+id/RG" 
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:gravity="right"  
     android:layout_below="@+id/QuestionRow"
     android:layout_alignRight="@+id/QuestionRow"        
     ></RadioGroup>

 <Button
     android:id="@+id/Vote"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_alignParentLeft="true"
     android:layout_below="@+id/RG"
     android:text="Vote" />

 <Button
     android:id="@+id/button1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_centerHorizontal="true"
     android:layout_below="@+id/RG"
     android:text="See Statistics" />

 </RelativeLayout>

1 个答案:

答案 0 :(得分:0)

protected void onPostExecute(HashMap<String,String> mylist) {
        // TODO Auto-generated method stub
        super.onPostExecute(mylist);
         for(Integer z=0;z<mRG.getChildCount();z++){
            View o =mRG.getChildAt(z);
            ((RadioButton)o).setText(text[z]);







    }

         for(Integer z =0;z< mRG.getChildCount();z++){

             Set set = mylist.entrySet(); 
                Iterator i = set.iterator(); 
             View o = mRG.getChildAt(z);

              NumberFormat formatter = new DecimalFormat("#0.00");

             if (o instanceof RadioButton){


             int counted[] = new int[ mRG.getChildCount()];
             int j=0;
             while(i.hasNext()) { 


    enter code here
                    Map.Entry me = (Map.Entry)i.next(); 
                    String Value=String.valueOf(formatter.format(Double.valueOf(me.getValue().toString())*100/count))+"%";
                    if (Integer.valueOf(me.getKey().toString())==((RadioButton) o).getId())
                    {

                        ((RadioButton)o).setText(text[z]+" "+ Value);
                    }



             }
         }
         }
         progressDialog.hide();
    }