2015-07-21 36 views
0

我有一個ButtonActivity,當我點擊Button我得到一個Spinner和3 EditText S和OK按鈕自定義對話框。 當我點擊確定按鈕我想從3 EditText和微調獲取數據。但是,試圖從微調獲取數據時,應用程序崩潰從微調的應用程序崩潰時獲得的項目 - 機器人

代碼:

dialogButtonOK.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
       spinnerEvents = (Spinner) findViewById(R.id.spinnerForEvents); 
        String MakeYears = Years.getText() + " Years"; 
        String MakeMonths = Months.getText() + " Months"; 
        String MakeDays = Days.getText() + " Days"; 
        String MakeDate = MakeYears + " " + MakeMonths + " " + MakeDays; 

        String MakeEventName = spinnerEvents.getSelectedItem().toString(); 

       dialog.dismiss(); 
       } 
      }); 

希望有人能幫助 謝謝!

唯一的例外是:

07-21 17:15:08.377 19898-19898/as.ga.myapp_v1 E/AndroidRuntime﹕ FATAL EXCEPTION: main 
    java.lang.NullPointerException 
      at as.ga.myapp_v1.Activity2$1$1.onClick(Activity2.java:167) 
      at android.view.View.performClick(View.java:4102) 
      at android.view.View$PerformClick.run(View.java:17085) 
      at android.os.Handler.handleCallback(Handler.java:615) 
      at android.os.Handler.dispatchMessage(Handler.java:92) 
      at android.os.Looper.loop(Looper.java:155) 
      at android.app.ActivityThread.main(ActivityThread.java:5454) 
      at java.lang.reflect.Method.invokeNative(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:511) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1029) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:796) 
      at dalvik.system.NativeStart.main(Native Method) 
+3

什麼是錯誤? – Renjith

+0

日誌會很好 –

+0

我寫了異常 – LiorYamin

回答

0

相反findViewById(R.id.spinnerForEvents)的,嘗試調用(你的對話視圖佈局根視圖).findViewById(R.id.spinnerForEvents)。

在調用toString()方法之前檢查您的getSelecetdItem()是否爲空。

if(spinnerEvents != null && spinnerEvents.getSelectedItem() !=null) { 
    makeEventName = (String)spinnerEvents(); 
} else { 

} 

或試試這個。刪除內部獲得微調值的邏輯dialogButtonOK.setOnClickListener

String makeEventName=""; 

spinnerEvents.setOnItemSelectedListener(new OnItemSelectedListener() {    
      @Override 
      public void onItemSelected(AdapterView<?> adapter, View v,int position, long id) { 
       // On selecting a spinner item 
       makeEventName= adapter.getItemAtPosition(position).toString(); 
      } 
      @Override 
      public void onNothingSelected(AdapterView<?> arg0) { 
      } 
}); 
+0

它爲空。爲什麼它是空的?!我有線spinnerEvents =(微調)findViewById(R.id.spinnerForEvents); – LiorYamin

+0

你能顯示events_array嗎? – Renjith

+0

INSIDE的strings.xml <字符串數組名=「Events_Array」> 事件之一 事件兩個 事件三 LiorYamin

相關問題