Android动态生成控件如何取值

 界面少控件的情况的下,我们往往采用在xml布局文件里面写页面代码。可遇到十几个输入框或者十几个点选按钮时候,我们就需要考虑动态生成控件的方法了。控件动态生成容易,但是控制这些控件的取值和赋值则没那么容易。我们需要掌握一些规律。下面就拿RadioGroup点选按钮组来举例说明吧。

首先要在页面上生成一个动态的直线布局对象LinearLayout  layoutmain=new LinearLayout(this);

假如你要生成十组RadioGroup,代码可以如下:

for(int i=0;i<10;i++)

{

       RadioGroup groupmain=new RadioGroup(this);

       groupmain.setOrientation(LinearLayout.HORIZONTAL);//设置为竖直排列

       for(int j=0;j<5;j++)

       {

               RadioButton radio = new RadioButton(this);

               if(j==0)
               {
                    radio.setText("东邪");
                }
                if(j==1)
                {
                    radio.setText("西毒");
                }
                if(j==2)
               {
                    radio.setText("南帝");
               }

               if(j==3)

               {

                     radio.setText("北丐");

               }

               if(j==4)

               {

                     radio.setText("中神通"):
               }
              groupmain.addView(radio);

       }

       layoutmain.addView(groupmain);

}

下面是取值:

String [] index=new String[10];

for(int  i=0;i<10;i++)

{

        RadioGroup choiseGroup= (RadioGroup) Linearlayout.getChildAt(i);

        int radiobuttonId = choiseGroup.getCheckedRadioButtonId();

        for( int j = 0;j < choiseGroup.getChildCount(); j++ )
       {
              RadioButton radiobt = (RadioButton) choiseGroup.getChildAt(k);
              if(radiobt.getId()==radioId)
              {
                  index[i]=j;
              }
       }
}

好了,就写到这里了,有问题就留言,
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值