Android 關於EditText的imeOptions屬性以及設定"回車"按鈕的事件監聽器
輸入法Enter鍵圖示的設定:
軟體盤的介面替換隻有一個屬性android:imeOptions,這個屬性的可以取的值有
normal,actionUnspecified,actionNone,actionGo,actionSearch,actionSend,actionNext,actionDone
actionUnspecified 未指定,對應常量EditorInfo.IME_ACTION_UNSPECIFIED.
actionNone 沒有動作,對應常量EditorInfo.IME_ACTION_NONE
actionGo 去往,對應常量EditorInfo.IME_ACTION_GO
actionSearch 搜尋,對應常量EditorInfo.IME_ACTION_SEARCH
actionSend 傳送,對應常量EditorInfo.IME_ACTION_SEND
actionNext 下一個,對應常量EditorInfo.IME_ACTION_NEXT
actionDone 完成,對應常量EditorInfo.IME_ACTION_DONE
我的示例程式是把一個TextView和EditText來回切換,且內容相通,多虧某位csdn網友的想法才找到這麼犀利的解決辦法,廢話不說,以下看我的示例程式
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/tv" android:layout_width="100dp" android:layout_height="wrap_content" android:longClickable="true" android:textSize="20px" android:text="編輯我一下" /> <EditText android:id="@+id/et" android:layout_width="100dp" android:layout_height="wrap_content" android:saveEnabled="true" android:textSize="20px" android:inputType="text" android:imeOptions="actionDone" android:visibility="gone" android:text="大學物理_01" /> </LinearLayout>
MainActivity.java
package com.example.edittext; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.view.KeyEvent; import android.view.Menu; import android.view.View; import android.view.View.OnKeyListener; import android.view.View.OnLongClickListener; import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import android.widget.TextView; import android.widget.TextView.OnEditorActionListener; public class MainActivity extends Activity { private EditText et=null; private TextView tv=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et=(EditText)findViewById(R.id.et); tv=(TextView)findViewById(R.id.tv); tv.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(View v) { tv.setVisibility(View.GONE); et.setVisibility(View.VISIBLE); et.setText(tv.getText().toString()); et.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_DONE) { et.setVisibility(View.GONE); tv.setVisibility(View.VISIBLE); tv.setText(et.getText().toString()); } return false; } }); return false; } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
實現了TextView和EditTex的來回切換,花了一個上午的時間,真心不容易,以後的路還很長哇!
當設定android:imeOptions="actionDone"之後按下done按鈕軟鍵盤自動隱藏!另外,我的搜狗輸入法設定之後圖示還是跟沒設定之前一樣,都是一個回車鍵頭,但是功能變了,這就足夠了,切換到谷歌拼音輸入法之後顯示就正常了!
相關推薦
Android 關於EditText的imeOptions屬性以及設定"回車"按鈕的事件監聽器
輸入法Enter鍵圖示的設定: 軟體盤的介面替換隻有一個屬性android:imeOptions,這個屬性的可以取的值有 normal,actionUnspecified,actionNone,actionGo,actionSearch,actionSend,actionN
jquery如何給物件動態新增屬性以及選擇器、事件的繫結
在工作用要用到給jd物件動態新增屬性的要求,在網上找到了一種解決方式,例項如下: 1、demo var aa="maker"; var bb=123; var lists={}; eval("lists."+aa+"="+bb); eval('('+"lists."+aa
android 捕獲返回(後退)按鈕事件的兩種方法
第一種方法: public void onBackPressed() { //code...... } 第二種方法: public boolean onKeyDown(int keyCode, KeyEvent event) {
【android】:android實現監聽多個按鈕事件
直接擼程式碼: 我有四個按鈕,下面的程式碼演示瞭如何將多個按鈕用一個事件監聽 在onCreate函式裡面 Button button1 = (Button)findViewBy
Android 筆記:按鈕事件以及案例
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layo
Android actionbar右上角按鈕設定監聽事件
如何給Android右上角三個點的按鈕設定監聽事件,比如說,點選右上角三個點顯示退出按鈕,點選退出後結束整個activity(或退出程式)。 只需要在activity
JS添加、設置屬性以及鼠標移入移出事件
tel 小明 效果 blog enter classname tex ext http 源代碼: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <t
Vue-cli中使用vConsole,以及設定JS連續點選控制vConsole按鈕顯隱功能實現
一、vue-cli腳手架中搭建的專案引入vConsole除錯 1.首先npm安裝,大家都懂的。 npm install vconsole 2.在合適的地方新建一個檔案vconsole.js,內容如下: import Vconsole from 'vconsole' let vConso
android 鍵盤屬性設定總結
其實很久之前就有遇到這樣一個問題,在APP中點選輸入框,經常出現鍵盤擠壓介面的問題, 之前解決後一直沒有作總結,最近又遇到了,發現網上說的大都是錯誤的,經過測試發現解決問題的配置如下,在Activity的配置中新增:android:windowSoftInputMode="stateHidden
Android之cardview屬性以及陰影處理
Android之cardview屬性以及陰影處理 開發中,專案會含有大量的圖片需要展示,需要圓角圖片,帶圓角的組合控制元件等.本文對cardview使用,以及屬性做開發記錄,方便後來者查閱(博主也容易忘東西) 先看效果圖(博主開發的一個VR中控平板端截圖) 一
文字屬性 以及背景圖設定 相對 絕對定位 042
文字屬性 : 文字對齊 text-align 有 none | center | left | right | justify 文字顏色 color 首行縮排 建議使用 em 即相對內容的大
ASP.NET多個Button的頁面,回車執行按鈕事件(轉)
主要有兩種實現方法分別是:JavaScript的方法與Panel的方法 一、JavaScript的方法 ①單輸入框(文字框)單按鈕的實現方法 以下功能實現:在輸入框中輸入內容之後,按回車鍵就執行按鈕事件! 在.aspx頁面的Head區域中新增: <
13 展訊Sprd設定-電池-應用事件變化資料收集(8.0 Android O)
1. UsageStatsService 的功能介紹 frameworks/base/services/usage/java/com/android/server/usage/UsageStatsService.java 2. SystemServer 啟動 Usa
android日期時間選擇,有多少天?多少年?以及設定時間選擇範圍(即最大值和最小值)
DatePickerDialog.OnDateSetListener bbrContactsBirthDateListener = new DatePickerDialog.OnDateSetListener() { @Override public void on
Android ConstraintLayout 屬性列表以及使用
大自然的搬運工 參考: http://www.jianshu.com/p/c60f787817ad https://juejin.im/post/5a1d9ba66fb9a044fb07819e app:layout_constraintLeft_toLeftOf 表示此
Android Studio裡設定了按鈕,開發到手機上,點開按鈕,卻發現沒有跳到下一個介面,而是閃退的原因
如果你在介面設定了按鈕,開發到手機上,點開按鈕,卻發現沒有跳到下一個介面,而是閃退。 原因是因為你沒有在左圖的xml檔案裡把結果的目標activity這3行寫進去。寫進去之後再重新下載到手機上,就可以了。
ionic3 導航欄返回按鈕事件設定 多級頁面返回到指定的頁面
借鑑原文地址 多級頁面返回到指定的頁面 export class Page { @ViewChild(Navbar) navBar: Navbar; ① ionViewDidLoad() { ② this.navBar.backButtonCli
Android Studio的快捷鍵以及設定方式
如果你之前已經使用其他版本的Studio,那麼直接覆蓋就好了,如果是第一次使用,那麼參照Android Studio系列教程一進行安裝配置。 於此同時一起更新的還有SDK Tools等,開啟SDK Manager進行更新就OK。如果之前有在使用RC版本的Studio
【問題分析】 為什麼設定了android:windowIsTranslucent屬性後Activity的退出動畫就不生效了
問題概述 當為Activity設定了android:windowIsTranslucent=true的style屬性後, 該Activity會變成一個透明視窗, 隨之而來的問題是Activity的退出動畫會不生效了, 哪怕在finish回撥中使用類似下面的程式碼為Activity配置自定義進
elasticsearch 建立索引以及設定相關 field屬性
package com.weibo.dip.kte; import org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequest; import org.elasticsearch.action.i