2016-10-24 107 views
2

我的代碼有點問題,應該在點擊按鈕時顯示烤麪包。帶按鈕和TOAST的Android微調器

public TextView textView,textView2; 

protected void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    Spinner spinner2 = (Spinner) findViewById(R.id.spinner2); 


} 
public void start(View view) { 

    Context context = getApplicationContext(); 
    Toast.makeText(context, String.valueOf(spinner.getSelectedItemPosition()) , Toast.LENGTH_LONG).show(); 
} 

我不知道爲什麼Toast消息不顯示,按下按鈕時程序崩潰。

+0

的xml文件也將是有益的。按鈕的onClickListener是「start」方法嗎? –

+0

顯示你的xml文件。 –

回答

2

看起來好像您沒有通過ArrayAdapter填充微調器,如文檔here中所示。所以除非你使用了xml屬性android:entries =「@ array/array_name」來填充spinner(我們看不到),那麼當你調用spinner.getSelectedItemPosition()時,它會拋出一個空指針異常。

0

它我在activity_main.xml中

<Spinner 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="73dp" 
    android:id="@+id/spinner2" 
    android:entries="@array/jednostki"/> 

按鈕飛旋在XML

<Button 
    android:text="Start" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/spinner" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="71dp" 
    android:id="@+id/button" 
    android:onClick="start"/> 

和陣列項目

<string-array name="jednostki"> 
    <item>Celsjusze</item> 
    <item>Farenheity</item> 
    <item>Kelwiny</item> 
</string-array>