我有一个Activity
带有的Button
,当我单击时,Button
我得到了一个带有aSpinner
和3 EditText
s以及“确定”按钮的自定义对话框。当我单击“确定”按钮时,我想从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)
尝试调用(您的对话框视图布局的根视图).findViewById(R.id.spinnerForEvents),而不是findViewById(R.id.spinnerForEvents)。
getSelecetdItem()
调用toString()
方法之前,请检查您的null是否为null 。
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) {
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句