2011-07-10 54 views
0

我試圖填充微調,但spiner.setAdapter(適配器)的應用程序崩潰......當的Android應用程序崩潰填充微調

final Context c=this; 
ArrayList<CountryItem> countriesArray = GetCountries1(); 
ArrayAdapter<CountryItem> adapter = new ArrayAdapter<CountryItem>(
    c,android.R.layout.simple_spinner_item, countriesArray); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
final Spinner spiner=(Spinner)findViewById(R.id.spinner1); 
spiner.setAdapter(adapter); 

我不能在這裏找到任何錯誤,和eclipse調試模式不顯示任何有用的... 這裏是來自谷歌的例子...它是如此不同於我的代碼?

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

回答

0

你會得到什麼錯誤?

您是否檢查countriesArray是否有元素或者是否爲空?

它是否在使用時,例如,一個簡單的字符串數組?如果是,那麼問題在於CountryItem對象。

除此之外,我看到的唯一區別是您將上下文作爲final變量傳遞,但我不知道是否會導致錯誤。嘗試僅通過this並查看它是否有效。

+0

這個問題已經超過一年了......我不知道如何使用堆棧溢出的時間... :)所以我現在接受這個答案......如果我沒有記錯,它是上下文導致問題的變量 – user568021