Android:以编程方式从数组创build微调器

我都是新来的Android,我试图创build一个微调程序,并从数组中提供数据,但Eclipse给我一个警告,我无法处理。

这是我得到的:

这个ArrayList包含应该在微调器中的元素(稍后从文件中填充):

ArrayList<String> spinnerArray = new ArrayList<String>();

这是我在一个网站上find的应该创build微调的代码:

 Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, spinnerArray); spinner.setAdapter(spinnerArrayAdapter); 

现在第二行(ArrayAdapter …)在Eclipse中给我一个警告: "ArrayAdapter is a raw type... References to generic type ArrayAdapter<T> should be parameterized" ,我不知道如何解决这个问题这意味着首先:))。

这只是一个警告和应用程序似乎运行正常,但我仍然想知道什么是错的,并修复它。 任何暗示是赞赏。

问候,select0r

ArrayAdapter<String>应该工作。

即:

 Spinner spinner = new Spinner(this); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout .simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

Array一样

 // Array of choices String colors[] = {"Red","Blue","White","Yellow","Black", "Green","Purple","Orange","Grey"}; // Selection of the spinner Spinner spinner = (Spinner) findViewById(R.id.myspinner); // Application of the Array to the Spinner ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, colors); spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view spinner.setAdapter(spinnerArrayAdapter); 

这对我工作的一个string数组名为“ shoes ”从项目资源加载:

  Spinner spinnerCountShoes = (Spinner)findViewById(R.id.spinner_countshoes); ArrayAdapter<String> spinnerCountShoesArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.shoes)); spinnerCountShoes.setAdapter(spinnerCountShoesArrayAdapter); 

这是我的资源文件( res/values/arrays.xml )与string数组:

  <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="shoes"> <item>0</item> <item>5</item> <item>10</item> <item>100</item> <item>1000</item> <item>10000</item> </string-array> </resources> 

使用这种方法,使其成为多语言(如果需要)更容易。

这实际上为我工作

  Spinner spinner = new Spinner(this); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>( this, android.R.layout.simple_spinner_item, spinnerArray); spinnerArrayAdapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item ); spinner = (Spinner) findViewById( R.id.spinner ); spinner.setAdapter(spinnerArrayAdapter); 

这个工作对我来说: –

 String[] array = {"A", "B", "C"}; String abc = ""; Spinner spinner = new Spinner(getContext()); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_spinner_item, array); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

我正在使用片段。