[發明專利]一種動態切換Android系統輸入法的彈出模式的方法在審
| 申請號: | 201710165874.6 | 申請日: | 2017-03-20 |
| 公開(公告)號: | CN106873876A | 公開(公告)日: | 2017-06-20 |
| 發明(設計)人: | 袁東風;于志浩;賁晛燁 | 申請(專利權)人: | 山東大學 |
| 主分類號: | G06F3/0484 | 分類號: | G06F3/0484;G06F3/0488 |
| 代理公司: | 濟南金迪知識產權代理有限公司37219 | 代理人: | 楊樹云 |
| 地址: | 250199 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 動態 切換 android 系統 輸入法 彈出 模式 方法 | ||
技術領域
本發明涉及一種Android系統利用動態切換輸入法的彈出模式解決輸入法跳閃抖動問題的方法,屬于安卓系統技術領域。
背景技術
隨著Android系統的快速發展以及安卓手機的不斷普及,基于Android系統的應用不斷地推陳出新,層出不窮。人們在日常生活中使用這些應用軟件進行社交、讀書、獲取資訊、娛樂等等已經演變成一種生活習慣。層出不窮的社交類軟件更成為手機用戶使用頻率最高的軟件。表情包一直是各類具有社交屬性APP的必備屬性,從最早的QQ,到現在的微信,微博,陌陌,以及各類帶有社交屬性的APP,如唱吧,支付寶等等。
我們在使用社交軟件進行聊天的過程中經常會輸入表情,往往我們在切換輸入法和表情面板時會出現抖動,比如,當表情顯示時,我們點擊表情按鈕,想要隱藏表情顯示軟鍵盤時,內容Bar有一個明顯的先向下后恢復的跳閃抖動現象,這里我們約定,我們把含有表情的那個面板稱為內容面板,這種抖動的體驗大大降低了用戶的使用體驗。具體是怎樣的抖動呢?我們以一個常用的微博應用為例,其具體表現為:表情面板隱藏,而軟鍵盤向上拖出瞬間,Activity高度變高,內容Bar往下滑動后又被軟鍵盤頂回原來的位置,最終讓界面產生了高度差抖動,所以在切換時明顯會有不大好的抖動體驗。而我們希望的是無論怎么切換都不會有跳閃抖動現象,這就是鍵盤與表情切換的抖動問題。如此就急需一種解決方案,解決輸入法與表情面板切換時的界面跳閃抖動問題。
發明內容
針對現有技術的不足,本發明提供了一種利用動態切換輸入法的彈出模式解決Android系統應用軟件切換輸入法時抖動問題的方法;
本發明適用于Android系統智能移動終端,本發明解決了Android系統中用戶在切換輸入法和其它應用的表情面板時輸入法跳閃抖動的問題,使得切換更加平滑,大大提高了用戶體驗。
術語解釋:
1、adjustResize模式:android:windowSoftInputMode屬性中的一個取值,表示輸入法彈出時Activity的主窗口總是調整屏幕的大小用以保證軟鍵盤的顯示空間。
2、adjustNothing模式:android:windowSoftInputMode屬性中的一個取值,表示彈出輸入法時,不會對Activity進行調整,Activity不會有任何變化。
3、Activity:Android應用中負責與用戶交互的組件,為Android應用提供可視化用戶界面。
4、EditText:接受用戶輸入信息的最重要控件,這里指輸入框。
5、Layout:Android應用的界面布局。
本發明的技術方案為:
一種動態切換Android系統輸入法的彈出模式的方法,包括步驟如下:
(1)初始狀態下,即軟鍵盤和表情面板都未展開時,為表情面板設置一個默認高度,默認高度的取值范圍是230dp-270dp,該默認高度可以保證表情面板正常顯示,默認高度的取值范圍根據屏幕大小可以設置為不同值,并將輸入法的彈出模式設置為adjustResize模式,adjustResize模式表示Activity的主窗口實時被調整大小,以保證軟鍵盤的顯示空間;
現有技術中,初始狀態時,將表情面板和輸入法高度固定,則有可能導致軟鍵盤的布局不合理從而帶入新的問題,本發明初始化時未設置表情面板和輸入法高度一樣,原因在于,雖然解決抖動問題的關鍵之一是讓兩者高度一致,但是,輸入法的高度應該是由輸入法處于adjustResize模式下彈出后決定,因為這樣才能保證軟鍵盤的顯示空間。
(2)點擊EditText,Android系統彈出軟鍵盤,軟鍵盤擠壓Layout,檢測并記錄軟鍵盤擠壓Layout的擠壓差值,此擠壓差值即為軟鍵盤的高度,將表情面板的高度值更新為該擠壓差值,與此同時,隱藏表情面板;
(3)固定內容面板的高度,內容面板是指表情面板上面其它所有控件的高度;
在一個布局中一個控件的位置其實是由它上面所有控件的高度決定的,如果其上面其他控件的高度不變,那么當前控件的高度自然也不會變化,即使到時Activity的高度發生了變化也不會影響該控件的位置,因此我們只要固定內容面板上方面所有控件高度,即可固定內容面板位置(高度)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東大學,未經山東大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710165874.6/2.html,轉載請聲明來源鉆瓜專利網。





