您的位置:首页 > 移动开发 > Android开发

Android动态生成控件如何取值

2012-03-07 11:50 351 查看
 界面少控件的情况的下,我们往往采用在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;

              }

       }

}

好了,就写到这里了,有问题就留言,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息