久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何處理 ImeOptions 的完成按鈕點擊?

How do I handle ImeOptions#39; done button click?(如何處理 ImeOptions 的完成按鈕點擊?)
本文介紹了如何處理 ImeOptions 的完成按鈕點擊?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有一個 EditText 我正在設置以下屬性,以便當用戶單擊 EditText 時我可以在鍵盤上顯示完成按鈕.

I am having an EditText where I am setting the following property so that I can display the done button on the keyboard when user click on the EditText.

editText.setImeOptions(EditorInfo.IME_ACTION_DONE);

當用戶單擊屏幕鍵盤上的完成按鈕(完成輸入)時,我想更改 RadioButton 狀態.

When user clicks the done button on the screen keyboard (finished typing) I want to change a RadioButton state.

如何在屏幕鍵盤點擊完成按鈕時跟蹤它?

How can I track done button when it is hit from screen keyboard?

推薦答案

我最終得到了 Roberts 和 chirags 的組合答案:

I ended up with a combination of Roberts and chirags answers:

((EditText)findViewById(R.id.search_field)).setOnEditorActionListener(
        new EditText.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        // Identifier of the action. This will be either the identifier you supplied,
        // or EditorInfo.IME_NULL if being called due to the enter key being pressed.
        if (actionId == EditorInfo.IME_ACTION_SEARCH
                || actionId == EditorInfo.IME_ACTION_DONE
                || event.getAction() == KeyEvent.ACTION_DOWN
                && event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
            onSearchAction(v);
            return true;
        }
        // Return true if you have consumed the action, else false.
        return false;
    }
});

更新:上面的代碼有時會激活回調兩次.相反,我選擇了從 Google 聊天客戶端獲得的以下代碼:

Update: The above code would some times activate the callback twice. Instead I've opted for the following code, which I got from the Google chat clients:

public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    // If triggered by an enter key, this is the event; otherwise, this is null.
    if (event != null) {
        // if shift key is down, then we want to insert the '
' char in the TextView;
        // otherwise, the default action is to send the message.
        if (!event.isShiftPressed()) {
            if (isPreparedForSending()) {
                confirmSendMessageIfNeeded();
            }
            return true;
        }
        return false;
    }

    if (isPreparedForSending()) {
        confirmSendMessageIfNeeded();
    }
    return true;
}

這篇關于如何處理 ImeOptions 的完成按鈕點擊?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

EditText: Disable Paste/Replace menu pop-up on Text Selection Handler click event(EditText:禁用文本選擇處理程序單擊事件上的粘貼/替換菜單彈出)
Multiline EditText with Done SoftInput Action Label on 2.3(2.3 上帶有完成 SoftInput 操作標簽的多行 EditText)
How to detect the swipe left or Right in Android?(如何在 Android 中檢測向左或向右滑動?)
Prevent dialog dismissal on screen rotation in Android(防止在Android中的屏幕旋轉對話框解除)
How do you set EditText to only accept numeric values in Android?(您如何將 EditText 設置為僅接受 Android 中的數值?)
Contact Bubble EditText(聯系氣泡編輯文本)
主站蜘蛛池模板: 国产精品s色 | 爱爱视频在线观看 | 男女污网站 | 久久久久久久一区 | 欧美理论 | 成人在线免费视频 | 午夜激情视频 | 国产一区二区三区四区五区3d | 69堂永久69tangcom | 国产一区二区三区在线视频 | 久久久久综合 | 成人福利| 欧美国产日韩一区二区三区 | 一区二区免费 | 国产成人综合久久 | 国产一区二区三区视频 | 天天躁日日躁狠狠的躁天龙影院 | 日韩精品一区二区三区第95 | 国产a视频 | 一区二区三区日 | 精品99在线| 亚洲91精品 | 在线三级网址 | 热久久免费视频 | 久久久久久亚洲国产精品 | 伊人春色成人 | wwww.8888久久爱站网 | 一区二区三区免费观看 | 国产精品国产精品国产专区不卡 | 久久国内| 最新国产精品精品视频 | 国产精品一二区 | 免费在线观看成人 | 精品国产乱码久久久久久a丨 | 日韩欧美视频在线 | 免费视频二区 | 成人精品区 | 欧美成人高清视频 | 欧美日韩91 | 一级片av | 看真人视频一级毛片 |