成人免费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軟鍵盤控制開發問題

2021-08-07 15:31:45

Windows 10Windows微軟

2009-08-21 13:25:49

C#打開軟鍵盤

2013-06-27 17:26:01

AndroidEditText

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開發設置程序屬性

2011-06-03 14:04:11

Android

2012-07-11 09:21:35

Windows Pho
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区麻豆 | 国产精品永久在线观看 | 日本国产精品视频 | 国产99热精品 | 在线伊人| 成人在线日韩 | 日本一本视频 | 欧美一区二区三区在线看 | 九九热九九 | 一片毛片 | 国产探花 | 2019天天干夜夜操 | 亚洲一级av毛片 | 一区精品国产欧美在线 | 欧美精品久久久久久久久老牛影院 | 亚洲视频在线看 | 精品1区2区| 一区二区三区四区av | 天天久久 | 亚洲视频观看 | 亚洲国产免费 | 国产高清精品一区二区三区 | 久久精品一区二区 | 亚洲一区视频在线 | 国产在线视频一区二区 | 国产欧美日韩精品在线观看 | 色久伊人| 午夜影院在线观看版 | 亚洲一区二区视频 | 欧美日韩不卡合集视频 | 午夜免费网站 | 九一精品 | 久久精品亚洲一区 | 日韩久久精品 | 国产乱码精品一区二区三区五月婷 | 婷婷综合网 | 亚洲精品一区二区三区蜜桃久 | 国产在线资源 | 欧美激情视频一区二区三区免费 | 欧美精品一区三区 | 日韩一区二区三区av |