2015-07-21 2 views
0

У меня есть Activity с Button и когда я нажимаю Button я получаю пользовательский диалог со Spinner и 3 EditText с и кнопкой OK. Когда я нажимаю кнопку Ok, я хочу получить данные из 3 EditText и из счетчика. Но при попытке получить данные от блесны приложение падаетпри получении элементов из кок аварий приложений - Android

код:

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).

Проверьте, что ваш getSelecetdItem() не имеет значения null перед вызовом метода toString().

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

Это значение равно null. почему это null?! У меня есть строка spinnerEvents = (Spinner) findViewById (R.id.spinnerForEvents); – LiorYamin

+0

Вы можете показать event_array? – Renjith

+0

ВНУТРИ strings.xml <строка-массив имя = "Events_Array"> Event One Событие Два Событие Три LiorYamin

Смежные вопросы