zoukankan      html  css  js  c++  java
  • android设置软键盘搜索键以及监听搜索键点击时发生两次事件的问题解决

    在输入框中加入android:imeOptions="actionSearch",调用软键盘时,回车键就会显示搜索二字。

    我想在点击搜索时,跳转到下一个页面,但是调用setOnKeyListener,每次都执行两次。最后上网看到别人的文章,解决了问题,解决方法是调用setOnEditorActionListener而不是用setOnKeyListener来监听点击搜索按钮。

    代码如下(在fragment中写的,在activity中写的时候去掉context相关的东西就行了):

    searchText.setOnEditorActionListener(new OnEditorActionListener() {

    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    if(actionId ==EditorInfo.IME_ACTION_SEARCH){

    // 先隐藏键盘
    ((InputMethodManager) searchText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE))
    .hideSoftInputFromWindow(
    getActivity()
    .getCurrentFocus()
    .getWindowToken(),
    InputMethodManager.HIDE_NOT_ALWAYS);

    //跳转activity
    Intent intent = new Intent();
    intent.setClass(getActivity(), SearchResultActivity.class);
    startActivity(intent);

    // 将查询的数据插入数据库

    mDbHelper.insert_search_history(searchText.getText().toString(), getStringDate());

    return true;
    }
    return false;
    }
    });

  • 相关阅读:
    JAVA 读取excel文件成List<Entity>
    JAVA 下载单个文件
    js替换指定位置字符串
    Java学习——继承
    Java——单例设计模式
    Java学习——static关键字
    个人成长阶段
    Android_xml背景色的值
    Android开发_关于点击事件
    Android开发_关于中英文切换
  • 原文地址:https://www.cnblogs.com/xgjblog/p/5349839.html
Copyright © 2011-2022 走看看