当设置了Window标志“LayoutNoLimits”时,Android软键盘不会滚动并覆盖EditText

问题描述 投票:0回答:1

我希望我的渐变背景在状态栏下方扩展。我可以通过将状态栏颜色设置为透明,然后调用:

Window.AddFlags(WindowManagerFlags.LayoutNoLimits);

但是,设置WindowManagerFlags.LayoutNoLimits会阻止软键盘向上滚动屏幕,并且正在编辑的EditText视图将隐藏在键盘下方。

android xamarin.android android-softkeyboard
1个回答
0
投票

我建议你可以使用另一种方法在状态栏下扩展渐变背景。

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fitsSystemWindows="true"
android:background="@drawable/gradient">    
<ScrollView  
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true"
         android:background="#fff">
   <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_centerInParent="true">
    <LinearLayout
        android:fitsSystemWindows="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_gravity="center"
        android:layout_marginBottom="10dp">
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="?android:attr/selectableItemBackground"
            android:src="@drawable/check">
            </ImageButton>
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:background="?android:attr/selectableItemBackground"
            android:src="@drawable/uncheck">
            </ImageButton>
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="?android:attr/selectableItemBackground"
            android:src="@drawable/icaon">
            </ImageButton>
        </LinearLayout>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text = "11111111"/>
    <EditText
            android:id="@+id/edittext"
            android:layout_width="match_parent"
            android:imeOptions="actionGo"
            android:inputType="text"
            android:layout_height="wrap_content" />
  </LinearLayout>
</ScrollView>

梯度:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient android:angle="135" android:startColor="#f56f2c" android:endColor="#fa9f46"/>
</shape>

protected override void OnCreate(Bundle savedInstanceState)
    {        
        if (Build.VERSION.SdkInt >= Build.VERSION_CODES.Kitkat)
        {
            Window w = Window;

            w.AddFlags(WindowManagerFlags.TranslucentStatus);
            w.SetSoftInputMode(SoftInput.StateHidden | SoftInput.AdjustPan);
        }
        // Set our view from the "main" layout resource
        base.OnCreate(savedInstanceState);
        SetContentView(Resource.Layout.layout2);

    }
© www.soinside.com 2019 - 2024. All rights reserved.