解決常見(jiàn)的軟鍵盤(pán)遮擋的方法

時(shí)間:2022-07-04 12:43:11 計算機硬件 我要投稿
  • 相關(guān)推薦

解決常見(jiàn)的軟鍵盤(pán)遮擋的方法

  一、問(wèn)題概述

解決常見(jiàn)的軟鍵盤(pán)遮擋的方法

  在編輯框輸入內容時(shí)會(huì )彈出軟鍵盤(pán),而手機屏幕區域有限往往會(huì )遮住輸入界面,我們先看一下問(wèn)題:

  輸入密碼時(shí)輸入框被系統鍵盤(pán)遮擋了,大大降低了用戶(hù)操作體驗,這就是開(kāi)發(fā)中非常常見(jiàn)的軟鍵盤(pán)遮擋的問(wèn)題,該如何解決?

  二、簡(jiǎn)單解決方案

  方法1

  在你的activity中的oncreate中setContentView之前寫(xiě)上這個(gè)代碼

  getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

  方法2

  在 項目的AndroidManifest.xml文件中界面對應的里加入

  android:windowSoftInputMode="stateVisible|adjustResize"

  這樣會(huì )讓屏幕整體上移。如果加上的 是 android:windowSoftInputMode="adjustPan"這樣鍵盤(pán)就會(huì )覆蓋屏幕。

  關(guān)于android:windowSoftInputMode

  activity主窗口與軟鍵盤(pán)的交互模式,可以用來(lái)避免輸入法面板遮擋問(wèn)題,Android1.5后的一個(gè)新特性。

  這個(gè)屬性能影響兩件事情:

  【一】當有焦點(diǎn)產(chǎn)生時(shí),軟鍵盤(pán)是隱藏還是顯示

  【二】是否減少活動(dòng)主窗口大小以便騰出空間放軟鍵盤(pán)

  它的設置必須是下面列表中的一個(gè)值,或一個(gè)”state…”值加一個(gè)”adjust…”值的組合。在任一組設置多個(gè)值——多個(gè)”state…”values,例如&mdash有未定義的結果。各個(gè)值之間用|分開(kāi)。

  例如:

  在這設置的值(除"stateUnspecified"和"adjustUnspecified"以外)將覆蓋在主題中設置的值

  各值的含義:

  【A】stateUnspecified:軟鍵盤(pán)的狀態(tài)并沒(méi)有指定,系統將選擇一個(gè)合適的狀態(tài)或依賴(lài)于主題的設置

  【B】stateUnchanged:當這個(gè)activity出現時(shí),軟鍵盤(pán)將一直保持在上一個(gè)activity里的狀態(tài),無(wú)論是隱藏還是顯示

  【C】stateHidden:用戶(hù)選擇activity時(shí),軟鍵盤(pán)總是被隱藏

  【D】stateAlwaysHidden:當該Activity主窗口獲取焦點(diǎn)時(shí),軟鍵盤(pán)也總是被隱藏的

  【E】stateVisible:軟鍵盤(pán)通常是可見(jiàn)的

  【F】stateAlwaysVisible:用戶(hù)選擇activity時(shí),軟鍵盤(pán)總是顯示的狀態(tài)

  【G】adjustUnspecified:默認設置,通常由系統自行決定是隱藏還是顯示

  【H】adjustResize:該Activity總是調整屏幕的大小以便留出軟鍵盤(pán)的空間

  【I】adjustPan:當前窗口的內容將自動(dòng)移動(dòng)以便當前焦點(diǎn)從不被鍵盤(pán)覆蓋和用戶(hù)能總是看到輸入內容的部分

  方法3

  把頂級的layout替換成ScrollView,或者說(shuō)在頂級的Layout上面再加一層ScrollView。這樣就會(huì )把軟鍵盤(pán)和輸入框一起滾動(dòng)了,軟鍵盤(pán)會(huì )一直處于底部。

  但這些方法雖然比較簡(jiǎn)單,但往往都有一定的局限性不是很靈活,有時(shí)達不到預期效果,大家可以試試或許也能解決你的問(wèn)題,下面就教大家一種具有代碼可控性的一種方法:

  三、代碼可控性方法

  鍵盤(pán)關(guān)閉:以上所述是小編給大家介紹的Android軟鍵盤(pán)遮擋的四種完美解決方案,希望對大家有所幫助,如果大家有任何疑問(wèn)請給我們留言,小編會(huì )及時(shí)回復大家的。在此也非常感謝大家對的支持!

【解決常見(jiàn)的軟鍵盤(pán)遮擋的方法】相關(guān)文章:

電腦內存常見(jiàn)問(wèn)題分析及解決方法07-11

雅思口語(yǔ)考試常見(jiàn)問(wèn)題及解決方法07-04

網(wǎng)站打不開(kāi)常見(jiàn)錯誤以及解決方法07-14

常見(jiàn)的MySQL解決方案07-11

解決演講緊張的方法07-02

常見(jiàn)的解釋詞語(yǔ)的方法07-05

常見(jiàn)網(wǎng)絡(luò )促銷(xiāo)方法07-10

物流慢的解決方法04-29

諾基亞C505主題安裝與刪除及常見(jiàn)問(wèn)題解決方法07-12

HPLC的常見(jiàn)問(wèn)題與解決方案07-13

99久久精品免费看国产一区二区三区|baoyu135国产精品t|40分钟97精品国产最大网站|久久综合丝袜日本网|欧美videosdesexo肥婆