gpt4 book ai didi

android - 如何将 EditText 添加到 DialogFragment?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:51:31 24 4
gpt4 key购买 nike

我已经创建了一个 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();
}

最佳答案

使用 getActivity()

final EditText input = new EditText(getActivity());

并且不要在字段中使用它,在 onCreateView 中初始化它,其中 getActivity 不会返回 null

关于android - 如何将 EditText 添加到 DialogFragment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14023904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com