数组中的许多Edittext

时间:2014-10-24 06:14:44

标签: android arrays android-edittext

我有20个edittext,layout和autocompletetextview我想使用数组访问它们和所有内容 我在附加他们的ID时收到错误。我在哪里错了

  LinearLayout[] laygroup ;
  EditText[] etquantity,etprice ; 
  AutoCompleteTextView[] etproduct ; 
  int[] laygroupid = new   int[]{R.id.laygroup0,R.id.laygroup1,R.id.laygroup2,R.id.laygroup3} ;
  int[] etquantityid = new int[]{R.id.autoquantity0,R.id.autoquantity1,R.id.autoquantity2,R.id.autoquantity3};
  int[] etpriceid = new int[]{R.id.autoprice0,R.id.autoprice1,R.id.autoprice2,R.id.autoprice3} ;
  int[] productid = new int[] {R.id.autoproduct0,R.id.autoproduct1,R.id.autoproduct2,R.id.autoproduct3};

然后在oncreate

  for(int i=0; i<=3; i++) 
    { 
    etprice[i] = (EditText)getActivity().findViewById(etpriceid[i]);
    etquantity[i] = (EditText)getActivity().findViewById(etquantityid[i]);
    laygroup[i] = (LinearLayout)getActivity().findViewById(laygroupid[i]) ;
    etproduct[i] = (AutoCompleteTextView)getActivity().findViewById(productid[i]); 
    }  

2 个答案:

答案 0 :(得分:1)

您需要声明这些数组的初始大小。了解如何在java中声明具有初始大小的数组

LinearLayout[] laygroup = new LinearLayout[10];
EditText[] etquantity = new EditText[10];
EditText[] etprice = new EditText[10]; 
AutoCompleteTextView[] = new etproduct EditText[10]; 

答案 1 :(得分:1)

试试这个..

您必须初始化大小数组。

  LinearLayout[] laygroup = new LinearLayout[3];
  EditText[] etquantity = new EditText[3];
  EditText[] etprice = new EditText[3]; 
  AutoCompleteTextView[] = new etproduct EditText[3];