ダイアログをループするためのダイアログを作成し、編集テキストをダイアログに表示したい。
- アクティビティの開始時に、ダイアログがループ ダイアログ No.1 に表示されます
- ダイアログのループ = No.1 入力ユーザー
- 入力ダイアログ番号3を表示するためにループするダイアログ
私のエラーログ:
1-29 14:54:23.314: E/AndroidRuntime(1099): FATAL EXCEPTION: main
01-29 14:54:23.314: E/AndroidRuntime(1099): java.lang.NullPointerException
01-29 14:54:23.314: E/AndroidRuntime(1099): at com.example.dialog_looping.MainActivity$dialog$1.onClick(MainActivity.java:44)
01-29 14:54:23.314: E/AndroidRuntime(1099): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:159)
01-29 14:54:23.314: E/AndroidRuntime(1099): at android.os.Handler.dispatchMessage(Handler.java:99)
01-29 14:54:23.314: E/AndroidRuntime(1099): at android.os.Looper.loop(Looper.java:123)
01-29 14:54:23.314: E/AndroidRuntime(1099): at android.app.ActivityThread.main(ActivityThread.java:3683)
01-29 14:54:23.314: E/AndroidRuntime(1099): at java.lang.reflect.Method.invokeNative(Native Method)
01-29 14:54:23.314: E/AndroidRuntime(1099): at java.lang.reflect.Method.invoke(Method.java:507)
01-29 14:54:23.314: E/AndroidRuntime(1099): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
01-29 14:54:23.314: E/AndroidRuntime(1099): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
01-29 14:54:23.314: E/AndroidRuntime(1099): at dalvik.system.NativeStart.main(Native Method)
アプリの私の完全なコード:
package com.example.dialog_looping;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
setContentView(new dialog(this));
}
public class dialog extends View {
public dialog(Context context) {
super(context);
//this.setNama(name.getText().toString());
LayoutInflater inflater = (MainActivity.this).getLayoutInflater();
new AlertDialog.Builder(MainActivity.this)
.setIcon(R.drawable.ic_launcher)
.setTitle("Input Your Name")
.setView(inflater.inflate(R.layout.dialoginputname, null))
.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
EditText name;
name = (EditText)findViewById(R.id.name);
//String a = name.setText(name.getText().toString());
//int z = Integer.valueOf(a);
new AlertDialog.Builder(MainActivity.this)
.setTitle("YOur Name Is")
.setMessage(name.getText().toString())
.setNeutralButton("Close", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dlg, int sumthin) {
finish();
}})
.show();
}
})
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
finish();
}
})
.show();
}
protected CharSequence nama() {
// TODO Auto-generated method stub
return null;
}
};
}