禁用Android中的搜索按钮

禁用Android中的搜索按钮,第1张

概述我在Android应用中有一个对话框,我不希望用户能够取消.使用.setCancelable(false)禁用后退按钮,但按下搜索按钮仍会取消对话框.我看到thisquestion告诉我应该包括publicbooleanonSearchRequested(){returnfalse;}但我仍然可以使用搜索按钮取消对话框.这是我的代码:

我在Android应用中有一个对话框,我不希望用户能够取消.使用.setCancelable(false)禁用后退按钮,但按下搜索按钮仍会取消对话框.我看到this question告诉我应该包括

public boolean onSearchRequested() {    return false;}

但我仍然可以使用搜索按钮取消对话框.这是我的代码:

public class TestActivity extends Activity {    /** Called when the activity is first created. */    @OverrIDe        public voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.main);        showDialog(0);    }    public boolean onSearchRequested() {        return false;    }    protected Dialog onCreateDialog(int ID) {        final AlertDialog.Builder builder = new AlertDialog.Builder(this);        builder.setMessage("Message")               .setCancelable(false)               .setPositivebutton("Ok", new DialogInterface.OnClickListener() {                   public voID onClick(DialogInterface dialog, int ID) {                       // nothing                   }               });         return builder.create();    }}

解决方法:

@Benh您需要使用此代码为Dialog的Key Listener设置

   builder.setonKeyListener(keyListener);

在活动类中添加以下代码

  OnKeyListener keyListener=new DialogInterface.OnKeyListener() {    @OverrIDe    public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {        if (keyCode == KeyEvent.KEYCODE_SEARCH && event.getRepeatCount() == 0) {            return true; //we stop begin cancel of dialog or Progressbar        }        return false;     }}; 

在你的对话框中试试这个以上的东西,希望对你有用.

总结

以上是内存溢出为你收集整理的禁用Android中的搜索按钮全部内容,希望文章能够帮你解决禁用Android中的搜索按钮所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115454.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存