하나의 액티비티에 4 개의 버튼이 있으므로 onClick 메서드를 사용하고 있습니다. 그들 (중 하나는이 herEe 단순히 내부에 두 개의 스피너와 대화 상자를 표시해야하는 문제가 여기에 코드입니다.회 전자를 onClick 내부에 넣기
public void onClick(View view) {
switch (view.getId()) {
case R.id.bAddNew:
// first button - not related
break;
case R.id.bAdvancedSettings:
// Spinner 1
plan = (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<CharSequence> spinner1Adapter = ArrayAdapter
.createFromResource(this, R.array.paymentplan,
android.R.layout.simple_spinner_item);
spinner1Adapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
plan.setAdapter(spinner1Adapter);
plan.setSelection(0);
plan.setOnItemSelectedListener(new MyOnItemSelectedListenerPlan());
// Spinner 2
display = (Spinner) findViewById(R.id.spinner2);
ArrayAdapter<CharSequence> spinner2Adapter = ArrayAdapter
.createFromResource(this, R.array.quickview,
android.R.layout.simple_spinner_item);
spinner2Adapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
display.setAdapter(spinner2Adapter);
display.setSelection(0);
display.setOnItemSelectedListener(new MyOnItemSelectedListenerDisplay());
final Dialog dialog = new Dialog(ManageDebts.this);
dialog.setContentView(R.layout.advanced);
dialog.setTitle("Advanced Details");
dialog.setCancelable(true);
Button Submit = (Button) findViewById(R.id.buttonAdvancedSubmit);
Submit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
}
});
break;
// next two buttons
} 여기
가 로그 캣 내가 얻고있다 :
11-30 09:50:52.305: E/AndroidRuntime(10747): FATAL EXCEPTION: main
11-30 09:50:52.305: E/AndroidRuntime(10747): java.lang.IllegalStateException: Could not execute method of the activity
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.view.View$1.onClick(View.java:3597)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.view.View.performClick(View.java:4202)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.view.View$PerformClick.run(View.java:17340)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.os.Handler.handleCallback(Handler.java:725)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.os.Handler.dispatchMessage(Handler.java:92)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.os.Looper.loop(Looper.java:137)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.app.ActivityThread.main(ActivityThread.java:5039)
11-30 09:50:52.305: E/AndroidRuntime(10747): at java.lang.reflect.Method.invokeNative(Native Method)
11-30 09:50:52.305: E/AndroidRuntime(10747): at java.lang.reflect.Method.invoke(Method.java:511)
11-30 09:50:52.305: E/AndroidRuntime(10747): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
11-30 09:50:52.305: E/AndroidRuntime(10747): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
11-30 09:50:52.305: E/AndroidRuntime(10747): at dalvik.system.NativeStart.main(Native Method)
11-30 09:50:52.305: E/AndroidRuntime(10747): Caused by: java.lang.reflect.InvocationTargetException
11-30 09:50:52.305: E/AndroidRuntime(10747): at java.lang.reflect.Method.invokeNative(Native Method)
11-30 09:50:52.305: E/AndroidRuntime(10747): at java.lang.reflect.Method.invoke(Method.java:511)
11-30 09:50:52.305: E/AndroidRuntime(10747): at android.view.View$1.onClick(View.java:3592)
11-30 09:50:52.305: E/AndroidRuntime(10747): ... 11 more
11-30 09:50:52.305: E/AndroidRuntime(10747): Caused by: java.lang.NullPointerException
11-30 09:50:52.305: E/AndroidRuntime(10747): at com.---.---.ManageDebts.onClick(ManageDebts.java:211)
11-30 09:50:52.305: E/AndroidRuntime(10747): ... 14 more
라인 (211)는
plan.setAdapter(spinner1Adapter);
사람이 문제가 나는 대화의와 스피너 많은 짓을 한거야?하지만,이 t 무엇인지 볼 수 그는 처음으로 함께. 내가 이것을 어떻게하는지 모르는가, 아니면 내가 간과하고있는 작은 것인지는 확실하지 않다. 내가 여기 추측
'대화 상자'레이아웃을 확장합니까? – tolgap
이게 무슨 일이 아닌가? 'dialog.setContentView (R.layout.advanced); ' – KickingLettuce