2014-01-30 42 views
0

試圖簡單地在我的應用程序中獲取微調器,但每次嘗試啓動活動時,行(註釋掉,應用程序都可以正常工作,沒有這兩行)會給我提供錯誤。我在Strings.XML中設置了一個數組,以便與Spinner一起使用來查看數據。主活動中的微調器Android適配器

我的XML包含了微調,像這樣:

<Spinner 
android:id="@+id/spinner" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" /> 

在strings.xml中我有我的數組:

<string-array name="spinner_array"> 
    <item>Mercury</item> 
    <item>Venus</item> 
    <item>Earth</item> 
    <item>Mars</item> 
    <item>Jupiter</item> 
    <item>Saturn</item> 
    <item>Uranus</item> 
    <item>Neptune</item> 
</string-array> 

我的主要活動,被評論的原因錯誤2行。訪問從XML佈局意見之前 http://chopapp.com/#cbz5r823

+0

Chopapp鏈接不顯示任何日誌:( – GhostDerfel

回答

1

呼叫setContentView

public class BusPurchase extends Activity 
{ 


@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, 
    R.array.spinner_array, android.R.layout.simple_spinner_item);  

    super.onCreate(savedInstanceState); 

     //adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    //spinner.setAdapter(adapter); 
    setContentView(R.layout.activity_bus_purchase);   
} 

日誌目錄顯示本

protected void onCreate(Bundle savedInstanceState) 
{ 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_bus_purchase); // set layout here 
    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    //..your code here 

} 

因爲你試圖設置佈局之前訪問視圖爲活動

+0

不錯的一個感謝百萬!工程好! – Shaz

0

由於你對一個spinner(R.id.spinner)的引用,你會得到一個空指針重新嘗試在膨脹佈局之前在佈局中引用項目。嘗試調用setContentView(R.layout.activity_bus_purchase);你的onCreate()方法的第一件事,看看是否沒有解決它。