成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android窗口軟鍵盤調整的關鍵:windowSoftInputMode屬性設置

移動開發 Android
當軟鍵盤顯示時,窗口會調整大小,以便為軟鍵盤騰出空間。通常意味著窗口的內容會向上移動,以便為鍵盤騰出空間。DecorView大小不會改變,內容區contentView(id = android.R.content)會相應的縮小為鍵盤騰出空間。

windowSoftInputMode 是 Android 中的一個屬性,定義了當屏幕上有焦點且需要顯示軟鍵盤(即屏幕鍵盤)時,活動(Activity)窗口應該如何調整。屬性位于 AndroidManifest.xml 文件中,針對每個 <activity> 標簽進行設置。

<activity 
    android:name=".MainActivity"
    android:windowSoftInputMode="stateHidden|adjustResize">
</activity>

windowSoftInputMode 有多個可能的值,可以分為兩類:state 前綴的值和 adjust 前綴的值。

  1. 「state 前綴的值」:

stateUnspecified:軟鍵盤的默認狀態由系統決定。

stateUnchanged:軟鍵盤將保持上一次的狀態,無論是可見還是隱藏。

stateHidden:當 Activity 被創建時,軟鍵盤是隱藏的。

stateAlwaysHidden:軟鍵盤總是隱藏的,即使用戶選擇了一個需要輸入文本的字段。

stateVisible:當 Activity 被創建時,軟鍵盤是可見的。

stateAlwaysVisible:軟鍵盤總是可見的。

  1. 「adjust 前綴的值」:
  • adjustUnspecified:默認調整方式。系統的選擇取決于屏幕大小和窗口是否可調整大小。

  • adjustResize:當軟鍵盤顯示時,窗口會調整大小,以便為軟鍵盤騰出空間。這通常意味著窗口的內容會向上移動,以便為鍵盤騰出空間。

  • adjustPan:窗口內容不會調整大小,而是向上平移,以便當前獲得焦點的字段不被鍵盤遮擋。

在AndroidManifest.xml設置:

<activity 
    android:name=".MainActivity"
    android:windowSoftInputMode="stateHidden|adjustResize">
</activity>

在代碼中設置:

public class MainActivity extends Activity {
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
    }
}

這些值可以通過 "|" 符號分隔進行組合,在上面的代碼中,stateHidden 和 adjustResize 被組合在一起使用。

windowSoftInputMode 常用的屬性有 adjustPan,adjustResize,adjustNothing

adjustPan

窗口內容不會調整大小,而是向上平移,以便當前獲得焦點的字段不被鍵盤遮擋。Activity窗口(DecorView)大小不變。當獲取到焦點的EditText位于屏幕下方,軟鍵盤彈出會遮擋到EditText時,整個DecorView會往上移動,至于上移多少并不確定。一般是上移至使EditText剛好不被軟鍵盤遮擋住為止。

圖片圖片

adjustResize

當軟鍵盤顯示時,窗口會調整大小,以便為軟鍵盤騰出空間。通常意味著窗口的內容會向上移動,以便為鍵盤騰出空間。DecorView大小不會改變,內容區contentView(id = android.R.content)會相應的縮小為鍵盤騰出空間。

圖片圖片

注意:adjustResize只是調整contentView的大小,所以還是有可能覆蓋掉EditText。

adjustNothing

Activity窗口不會做任何調整,contentView大小也不會改變。

責任編輯:武曉燕 來源: 沐雨花飛蝶
相關推薦

2017-07-03 17:20:55

Android軟鍵盤控制開發問題

2009-08-21 13:25:49

C#打開軟鍵盤

2013-06-27 17:26:01

AndroidEditText

2021-08-07 15:31:45

Windows 10Windows微軟

2017-12-05 15:26:19

2017-12-05 13:12:35

Android軟鍵盤參數

2024-03-06 09:16:57

PAD設備kikaInput鴻蒙

2020-03-24 09:34:00

移動端H5軟鍵盤

2021-07-13 09:49:08

鴻蒙HarmonyOS應用

2019-04-25 10:20:22

H5軟鍵盤前端

2013-04-01 17:05:28

2021-02-20 22:15:44

Android 代碼操作系統

2009-04-15 08:18:44

AndroidGoogle移動OS

2019-08-05 08:02:31

AI 數據人工智能

2022-04-26 10:41:46

Android游戲開發工具

2009-05-07 17:24:05

Android 1.5CupcakeAndroid

2009-05-13 08:37:10

GoogleAndroid移動OS

2013-05-14 10:27:46

Android開發設置程序屬性

2012-07-11 09:21:35

Windows Pho

2012-12-13 13:27:29

Corona SDK
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品在线视频 | 免费在线国产视频 | av永久| 午夜精品一区 | 国产成人99久久亚洲综合精品 | 中文字幕免费视频 | 亚洲成年人免费网站 | 91精品国产91久久久久青草 | 99视频免费| 欧美在线视频网 | 久久久久久国产精品三区 | 中文无码日韩欧 | 黄色网址免费在线观看 | 中文字幕免费中文 | 日本天天操 | 免费视频一区 | 美女天天干天天操 | 色精品视频 | 天堂一区二区三区 | 精品一区二区三区四区外站 | 日本精品久久久久 | 久久久久国产精品 | 午夜精品久久久久久久久久久久久 | 欧美精品福利视频 | 日本aⅴ中文字幕 | 最新中文字幕在线播放 | 91传媒在线观看 | 婷婷桃色网 | 国产男女精品 | 国产三级精品三级在线观看四季网 | 色综合久久88色综合天天 | av大全在线 | 精品一区二区在线观看 | 久草色视频 | 午夜视频在线观看网址 | 91久久久久久久久久久 | 国产精品久久午夜夜伦鲁鲁 | 欧美在线一区二区三区 | 古装三级在线播放 | 色黄网站 | 久久伊人影院 |