短視訊直播原始碼,EditText輸入框的使用
短視訊直播原始碼,EditText輸入框的使用
一、基礎屬性
首先,EditText作為一個控制元件,他是繼承於View的,所以他具有View的很多屬性及方法。當然,現在出了個AppCompatEditText,它是繼承於EditText的,加了一些外觀的處理,其餘的用法那些一模一樣。
在寫Xml介面時,我們可以通過Android:,tools:,自定義屬性等等為其定義各種屬性。這些屬性可以確定他的寬高,行數,輸入限制等等,常見的用法如下:
<androidx.appcompat.widget.AppCompatEditText android:id="@+id/login_email_edit" //控制元件id android:layout_width="match_parent" android:layout_height="56dp" android:layout_marginHorizontal="3dp"//水平外邊距 android:inputType="textEmailAddress"//輸入型別限制為郵箱,所以你的輸入法的很多特殊字元跟不輸入不了哈 android:cursorVisible="true"//游標顯示控制 android:ellipsize = “end” //省略號在結尾,也可在開始,或者跑馬燈等等,這個是內容過長後的處理方式 android:marqueeRepeatLimit=”marquee_forever” //設定跑馬燈迴圈次數為永遠,也可以直接輸入次數 android:textIsSelectable="true"//文字是否可被選中 android:textStyle="bold"//文字風格:加粗 android:paddingStart="16dp"//左內邊距 android:maxLines="1"//最大行數 android:selectAllOnFocus = “true"//獲得焦點後全選元件內所有文字內容,比如更換賬號 android:digits="QWERTYUIOPASDFGHJKLZXCVBNM1234567890"//輸入限制 android:hint="@string/input_email" //提示,當輸入內容後訊息 android:textColorHint="@color/white"//提示文字顏色 android:background="@drawable/rgb32363b_r8"//背景 android:textColor="@color/white"//輸入文字顏色 android:textCursorDrawable="@drawable/green"//設定游標資源 android:layout_marginTop="45dp" android:textSize="16sp"//文字尺寸 android:gravity="center_vertical"//內容垂直方向居中 android:drawbleStart="@drawable/we_chat"//控制元件開始位置加一個圖示 app:layout_constraintStart_toStartOf="parent"//這個是約束佈局的約束條件,不用管 app:layout_constraintTop_toBottomOf="@id/login_email_title_tv" />
上邊是輸入框/編輯欄常用的一些屬性,還有一些其他的,不咋用,就不深究了。
二、狀態監聽
為了良好的互動和使用者體驗,我們在做功能時需要對輸入框又一些狀態上的監聽才能更好的把一些資訊反饋給使用者。比如登入時的,錯誤提示,選中時的顏色改變等等,常用的一些方法如下:
1.內容編輯的監聽:當我們需要實時對內容進行監聽:比如內容為空/格式不對時,登入按鈕置灰不可點選。
emailEdit.addTextChangedListener(object : TextWatcher { // charSequence為在你按鍵之前顯示的字串 p1為新字串與charSequence開始出現差異的下標 //p2表示原字串的count個字元 p3表示將會被after個字元替換 override fun beforeTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) {} // 按鍵之前字串的p1位置的p2個字元已經被p3個字元替換形成新字串charSequence override fun onTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) { if (!p0.isNullOrEmpty()) { isEmailEmpty = false //是否為空 } //在這裡面可以對內容做字數的判定等等,比如文字框的右下角一般都會有一個到達一定 //字數就不可輸入,字型顏色變化等等 } // afterTextChanged中 p0為EditText顯示的內容 override fun afterTextChanged(p0: Editable?) { isRight = CheckEditFormat.checkEditInput(p0.toString()) loginTv.isEnabled = !isEmailEmpty && !isPasswordEmpty //登入按鈕是否可 以點選,也可以在這裡動態更改該控制元件或者其他控制元件的背景,顏色等等 } }) //判斷輸入是否為郵箱格式 fun checkEditInput(string: String?): Boolean { val pattern = Pattern.compile("[A-Za-z\\d]+([-_.][A-Za-z\\d]+)*@([A-Za-z\\d]+[-.])+[A-Za-z\\d]{2,4}") return ((string?.length ?: 0) > 0) && pattern.matcher(string ?: "").matches() }
2.是否聚焦監聽:選中更改背景,內容處理等等
emailEdit.setOnFocusChangeListener { view, b -> if (b) { view.setBackgroundResource(R.drawable.rgb32363b_strokeef7300_r8)//選中為黃色邊框 }else{ view.setBackgroundResource(R.drawable.rgb32363b_r8)//未選中為灰色邊框 } }
3.進入介面聚焦狀態自動呼起軟鍵盤
object KeyboardUtils { /** * 彈起軟鍵盤 * @param editText */ fun openKeyBoard(editText: View, context: Context) { editText.isFocusable = true editText.isFocusableInTouchMode = true; editText.requestFocus(); val timer = Timer(); timer.schedule(object : TimerTask() { override fun run() { val imm: InputMethodManager = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager imm.showSoftInput(editText, 0) } }, 200) } }
以上就是短視訊直播原始碼,EditText輸入框的使用, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2902158/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 影片直播系統原始碼,EditText輸入框的使用原始碼
- app直播原始碼,監聽EditText輸入框內輸入內容的變化APP原始碼
- 影片直播app原始碼,自定義View 線型EditText輸入框APP原始碼View
- 短視訊直播原始碼,React children元件例項提示框原始碼React元件
- 直播短視訊原始碼短視訊APP短視訊帶貨系統多商戶直播原始碼APP
- 直播系統原始碼,Vue 禁止輸入框輸入空格原始碼Vue
- 短視訊原始碼,密碼框驗證資訊文字提示原始碼密碼
- 短視訊軟體開發,flutter 輸入框限制輸入 數字、小數Flutter
- 短視訊直播系統開發直播短視訊程式搭建短視訊互動直播
- 短視訊直播原始碼,自定義圖片或視訊的迴圈播放原始碼
- 短視訊直播原始碼,DialogFragment全屏且半透明原始碼Fragment
- 短視訊app原始碼,輸入邀請碼時點選「螢幕」周邊或者「返回鍵」彈框不會消失APP原始碼
- 短視訊直播原始碼,遊客模式下使用正常功能跳轉到登入頁面原始碼模式
- 一對一交友原始碼+直播原始碼+短視訊原始碼,誰才是流量之王?原始碼
- 視訊直播原始碼+一對一交友原始碼+短視訊原始碼,抓住5G就是抓住機遇原始碼
- 直播網站原始碼,安卓防止輸入框自動彈出網站原始碼安卓
- 短視訊直播原始碼,視訊計時效果,可隨時按鍵暫停原始碼
- 直播app原始碼,Java的輸入輸出APP原始碼Java
- 直播原始碼和短視訊原始碼,相親相愛的一家人原始碼
- 直播app系統原始碼,flutter 驗證碼輸入框的簡單封裝APP原始碼Flutter封裝
- app直播原始碼,android實現帶下劃線的密碼輸入框APP原始碼Android密碼
- 短視訊原始碼,uniapp中單選框radio的實現原始碼APP
- 直播小程式原始碼,react-native自定義文字輸入框原始碼React
- 直播原始碼,一對一交友原始碼,短視訊原始碼,你知道他們的區別嗎?原始碼
- 一對一直播原始碼相對比短視訊原始碼開發程度高低原始碼
- 直播商城原始碼,密碼輸入框自定義顯示隱藏圖示原始碼密碼
- 視訊直播原始碼,css實現圖片對角邊框線原始碼CSS
- 短視訊原始碼,python使用post提交圖片原始碼Python
- 短視訊平臺原始碼,自定義上傳有邊框的背景圖片原始碼
- 短視訊的哪些創新功能為短視訊原始碼提供良好的借鑑?原始碼
- app直播原始碼,登入時輸入驗證碼、簡訊驗證身份APP原始碼
- 騰訊又出短視訊小程式“看一看短視訊”。短視訊原始碼有巨大潛力?原始碼
- Flutter 密碼輸入框 驗證碼輸入框Flutter密碼
- 短視訊系統原始碼,動態輸入文字到達行上限自動換行原始碼
- 短視訊系統原始碼,直播間實現彈幕的自動傳送原始碼
- 短視訊直播原始碼,自動對上傳的圖片進行識別原始碼
- 短視訊原始碼,視訊轉為圖片儲存原始碼
- 影片直播原始碼,下拉多選el-tag顯示在輸入框中原始碼