2011-08-04 6 views
0

동적 배열 이름으로 안드로이드 스피너를 채우기, Plz은 예를 들어 다른 배열 이름 등을 COUNTRY_CODE를 변경하는 내가 동적으로 R.array.country_array을해야 나에게내가 이런 일을하고 싶지

Spinner spinner = (Spinner) findViewById(R.id.spinner5 
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
      this,**R.array.country_array**, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(adapter5); 

도움 city_array 또는 stat_array와 유사합니다.

은 내가 쓰려고했습니다 "R.array을."+ dynamic_variable_array_name

하지만 그것이 ArrayAdapter와 참조 전에 내가

답변

4

왜 당신이 당신의 배열 초기화하지 않는 데 도움이 failed..any?

Array myArray = getMyArray(); 

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
      this, myArray, android.R.layout.simple_spinner_item); 

은 [업데이트]
좋아, 난 그냥 ArrayAdapter.createFromResource이 아닌 자원으로 작동하지 않습니다 나타났습니다. 하지만이 작동합니다

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
android.R.layout.simple_spinner_item, myArray); 
+0

첫 번째 옵션은 나를 위해 작동하십시오. 그저 myArray를 다음과 같이 int로 선언해야합니다. int myArray = R.array.my_array_name; ArrayAdapter adapter = ArrayAdapter.createFromResource (this, myArray, android.R.layout.simple_spinner_item); – user3267567

0

Spinner countrySpinner = (Spinner) findViewById(R.id.search_country); 
CharSequence[] myArray = new CharSequence[]{ 
       "Qatar","UAE","India","America" 
     }; 
ArrayAdapter<CharSequence> countryAdapter = new ArrayAdapter<>(getApplicationContext(), android.R.layout.simple_spinner_item,myArray); 
     countryAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
countrySpinner.setAdapter(countryAdapter); 
관련 문제