zoukankan      html  css  js  c++  java
  • android 监控软键盘确定 搜索 按钮并赋予点击事件

    在android的实践开发中,为了界面的美观,往往那些搜索框并没有带搜索按钮,而是调用了软键盘的搜索按钮,完成这次时间
    
    • 1
    • 2

    这里写图片描述
    这里写图片描述

    好吧!直接上代码!

    <EditText
            android:id="@+id/my_chat_seach"
            android:layout_width="fill_parent"
            android:layout_height="23dp"
            android:layout_centerVertical="true"
            android:layout_marginRight="6dip"
            android:layout_toRightOf="@id/my_seach_item_1_button"
            android:background="@color/white"
            android:gravity="center_vertical"
            android:hint="@string/search"
            android:imeOptions="actionSearch"
            android:singleLine="true"
            android:textColor="#8e8787"
            android:textSize="13sp" />

    xml配置文件中 最重要的一个属性是: android:imeOptions=”actionSearch”,从而调用软键盘时,回车键就会显示搜索二字。
    同时在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode=”adjustPan”,可以防止软键盘会把原来的界面挤上去的问题。
    那么在该activity中,如何操作呢?

    seachEditText = (EditText) findViewById(R.id.my_chat_seach);
    watchSearch();

    然后

    /**
         * @方法说明:监控软键盘的的搜索按钮
         * @方法名称:watchSearch
         * @返回值:void
         */
        public void watchSearch() {
            seachEditText.setOnEditorActionListener(new OnEditorActionListener() {
    
                @Override
                public boolean onEditorAction(TextView v, int actionId,
                        KeyEvent event) {
                    if (actionId == EditorInfo.IME_ACTION_SEARCH) {
                        // 先隐藏键盘
                        ((InputMethodManager) seachEditText.getContext()
                                .getSystemService(Context.INPUT_METHOD_SERVICE))
                                .hideSoftInputFromWindow(ChatFriendsGroudSeach.this
                                        .getCurrentFocus().getWindowToken(),
                                        InputMethodManager.HIDE_NOT_ALWAYS);
                        // 搜索,进行自己要的操作...
                        seachList(viewIndex);//这里是我要做的操作!
                        return true;
                    }
                    return false;
                }
            });
        }

    好的!完成!

  • 相关阅读:
    isEmpty和isBlank区别
    java加密算法相关
    页面跳转、替换、刷新
    打开一个网站都经过了什么
    css3动画和JS+DOM动画和JS+canvas动画比较
    canvas如何兼容IE8
    移动端的300毫秒延迟问题
    几道前端的面试题
    js执行过程
    微信查看网页源代码的方法
  • 原文地址:https://www.cnblogs.com/ldq2016/p/8615943.html
Copyright © 2011-2022 走看看