键盘向上移动时屏幕无法正确移动 - android
Posted
技术标签:
【中文标题】键盘向上移动时屏幕无法正确移动 - android【英文标题】:Screen not moving correctly when keyboard moves up - android 【发布时间】:2016-04-19 15:03:20 【问题描述】:我正在 Xamarin 中制作一个 android 应用程序,下面的代码是登录窗口的 axml。但问题是,当我触摸密码字段时,布局不会向上移动,因此我可以看到“innskráning”按钮(登录按钮),我尝试将所有内容设置为 relativeLayout,并在其中进行了很多更改,但没有任何效果。我的 androidManifest 文件中也有: android:windowSoftInputMode="stateVisible|adjustResize"
谁能帮帮我,我花了这么多时间。
提前致谢。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:p1="http://schemas.android.com/apk/res/android"
p1:id="@+id/scrollView"
p1:layout_
p1:layout_
p1:fillViewport="true">
<LinearLayout
p1:orientation="vertical"
p1:layout_
p1:layout_
p1:id="@+id/linearLayout1"
p1:background="#FFFFFF">
<ImageView
p1:src="@drawable/advania"
p1:layout_
p1:layout_
p1:layout_marginTop="20dp"
p1:id="@+id/imageView1"
p1:layout_gravity="center"
p1:layout_centerInParent="true"
p1:background="#FFFFFF" />
<RelativeLayout
p1:layout_
p1:layout_
p1:id="@+id/relativeLayout2"
p1:background="#FFFFFF"
p1:gravity="center">
<EditText
p1:layout_
p1:layout_
p1:padding="10dp"
p1:id="@+id/userName"
p1:layout_centerHorizontal="true"
p1:background="@drawable/rounded_edittext"
p1:layout_marginTop="3.3dp"
p1:hint="Notendanafn"
p1:textColor="#000"
p1:textSize="14dp"
p1:typeface="normal"
p1:textStyle="normal"
p1:drawableRight="@drawable/iconusername"
p1:fontFamily="HelveticaNeue" />
<EditText
p1:inputType="textPassword"
p1:layout_
p1:layout_
p1:padding="10dp"
p1:layout_below="@id/userName"
p1:id="@+id/password"
p1:layout_centerHorizontal="true"
p1:layout_marginTop="18.8dp"
p1:textColor="#000"
p1:textSize="14dp"
p1:textStyle="normal"
p1:typeface="sans"
p1:drawableRight="@drawable/iconkey"
p1:background="@drawable/rounded_edittext"
p1:hint="Lykilorð"
p1:fontFamily="HelveticaNeue" />
<Button
p1:text="Innskráning"
p1:layout_
p1:layout_
p1:layout_below="@id/password"
p1:id="@+id/logIn"
p1:layout_marginTop="21.7dp"
p1:layout_centerHorizontal="true"
p1:enabled="true"
p1:textSize="14dp"
p1:typeface="normal"
p1:textStyle="normal"
p1:fontFamily="HelveticaNeue"
p1:background="@drawable/rounded_edittext_login" />
<TextView
p1:text="Version x.x.x"
p1:textAppearance="?android:attr/textAppearanceSmall"
p1:layout_
p1:layout_
p1:layout_below="@id/logIn"
p1:id="@+id/versionText"
p1:layout_centerHorizontal="true"
p1:layout_marginTop="20.0dp"
p1:layout_marginRight="0.8dp"
p1:fontFamily="HelveticaNeue" />
<TextView
p1:text="Advania"
p1:textAppearance="?android:attr/textAppearanceSmall"
p1:layout_
p1:layout_
p1:layout_below="@id/logIn"
p1:id="@+id/textView1"
p1:layout_centerHorizontal="true"
p1:layout_marginTop="50.0dp"
p1:layout_marginRight="0.8dp"
p1:fontFamily="HelveticaNeue" />
</RelativeLayout>
</LinearLayout>
</ScrollView>
【问题讨论】:
【参考方案1】:我使用了 AdjustResize | StateHidden 在它自己的 Activity 中 我之前有 AdjustResize,它给了我同样的问题,但在添加 StateHidden 后它起作用了
[Activity(Label = "MainActivity", Theme = "@style/NoActionBar", MainLauncher = true, WindowSoftInputMode = SoftInput.StateHidden | SoftInput.AdjustResize, ScreenOrientation = ScreenOrientation.Portrait)]
public class MainActivity : Activity
【讨论】:
以上是关于键盘向上移动时屏幕无法正确移动 - android的主要内容,如果未能解决你的问题,请参考以下文章