DialogFragment を作成しましたが、EditText を追加したいのですが、次のように追加しようとすると:
final EditText input = new EditText(this);
「this」で「コンストラクター EditText(EncryptionDialogFragment) が定義されていません」というエラーが表示されます。
私の最終的な目標は、ユーザーにこの方法でパスワードを入力させることです。
public class EncryptionDialogFragment extends DialogFragment {
final EditText input = new EditText(this);
static EncryptionDialogFragment newInstance(String title){
EncryptionDialogFragment fragment = new EncryptionDialogFragment();
Bundle args = new Bundle();
args.putString("title", title);
fragment.setArguments(args);
return fragment;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
return new AlertDialog.Builder(getActivity())
.setIcon(R.drawable.ic_launcher)
.setTitle("Enter Password:")
.setView(input)
.setPositiveButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
((MainActivity)getActivity()).doPositiveClick();
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
((MainActivity)getActivity()).doNegativeClick();
}
}).create();
}
}