我在制作一个应用程序,并且在我的布局中添加了一个EditText。在android中的editText
我想要实现的是,当选择EditText时,应打开一个对话框,其中包含一些常规文本和一个OK
按钮。我可以使用哪种方法来完成此操作?
我在制作一个应用程序,并且在我的布局中添加了一个EditText。在android中的editText
我想要实现的是,当选择EditText时,应打开一个对话框,其中包含一些常规文本和一个OK
按钮。我可以使用哪种方法来完成此操作?
你必须尝试这样
searchtext.setOnKeyListener(new OnKeyListener()
{
public boolean onKey(View v, int keyCode, KeyEvent event)
{
if (event.getAction() == KeyEvent.ACTION_DOWN)
{
showDialog();
}
}
};
一些东西,在这里不用的ShowDialog()代码
private void showDialog()
{
final AlertDialog.Builder Main_Dialog = new AlertDialog.Builder(this);
final EditText input = new EditText(this);
input.setPadding(10, 10, 10, 10);
input.setText(ipAddress);
Main_Dialog.setView(input);
Main_Dialog.setTitle("Enter IP Address:");
Main_Dialog.setPositiveButton("Ok", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int whichButton)
{
//Do whatever
}
});
Main_Dialog.show();
}
你的意思是你想在你的EditView获得焦点时显示对话框?我认为覆盖View.onFocusChanged()将是要走的路。如果要跟踪EditText的详细输入,请实现TextWatcher并使用TextView.addTextChangedListener()将其添加到EditText实例。
如果我正确地读你的困境,你会设置一个OnFocusChangeListener为的EditText 。像下面的剪辑一样。
EditText e = new EditText(this);
e.setOnFocusChangeListener
(
new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (v.hasFocus()) {
showDialog(COOL_DIALOG);
}
}
}
);
请注意,这似乎是一个有点奇怪的用户交互。为什么不让他们使用EditText来创建它?如果你真的想这样做,我建议使用常规的TextView或Button,并使用单击处理程序来弹出对话框。这将为用户创建更“期望”的交互。
请提供您的代码。这将有助于找出错误。 – Praveen 2011-02-15 12:38:02
Yeah Ofcourse Reno – Shah 2011-02-15 12:59:31
@Reno请不要伤害别人 – ingsaurabh 2011-02-15 13:03:30