【问题标题】:How to create dynamically radiobutton while parcing a csv file in android如何在android中解析csv文件时动态创建单选按钮
【发布时间】:2026-02-07 09:40:01
【问题描述】:

我是 Android 新手。我想在我正在处理的应用程序中创建一组单选按钮,但我想从 csv 文件或数据库中定义单选按钮的数量。 在某种程度上,如果我在 csv 文件中有两个选项,则显示 2 个单选按钮,如果我在 csv 文件中有 3 个选项,则显示 3 个单选按钮。 我怎样才能做到这一点?

我正在使用eclipse

【问题讨论】:

    标签: android csv radio-button


    【解决方案1】:

    1) 读取 csv 文件: How to read csv file in android?

    2) 在您的应用程序中为每个选项动态添加一个单选按钮: how to set dynamically created Radio buttons into a RadioGroup?

    【讨论】:

      【解决方案2】:

      愿你平安

      将动态创建的单选按钮设置为 RadioGroupfor 我找到了这个解决方案

      http://androiddesk.wordpress.com/2012/08/05/creating-dynamic-views-in-android/

      我使用了这个函数来解析 csv 文件

       private String[] loadArrayFromFileName(){
      
                  String[] liste=null;
                  String[] liste2=null;
                  String liste3=null;
                  int s=0;
              try {
              // Get input stream and Buffered Reader for our data file.
              InputStream is = FocusTow.this.getAssets().open("Test.csv"); 
              BufferedReader reader = new BufferedReader(new InputStreamReader(is));
      
                      String line;
      
              //Read each line
               while ((line = reader.readLine()) != null) {
               liste2=line.split("\n");
               for(int i=0; i< liste2.length;i++){
                  if(s==0) {
                      liste3=liste2[i];
                      s=1;
                          }
                      else liste3=liste3+","+liste2[i];
                      }
                      }
                      liste=liste3.split(",");
                      //Read each line
      
                  } catch (IOException e) {
                      e.printStackTrace();
                  }
                  return liste;
              }
      

      这是我的按钮监听器的代码

       mybutton.setOnClickListener(new OnClickListener() {
                       int j=0;
      
                       final String[] liste=loadArrayFromFileName();
      
                       @Override
                       public void onClick(View v) {
                       // TODO Auto-generated method stub
      
      
      
               for( j=0;j<liste.length/2;j++){
      
               RadioButton radiobutton=new     RadioButton(getApplicationContext());
      
                   radiobutton.setText(liste[j*2+1]);
      
                   radioGroup.addView(radiobutton);
      
      
      
      
                                      }
                                  }
                             });
      

      希望对你有帮助 谢谢。

      【讨论】: