键盘打开时查看滚动以在Entry Control中键入内容

时间:2016-06-10 11:28:42

标签: xamarin xamarin.android xamarin.forms xamarin.forms.labs

当用户焦点Xamarin.Form键盘中的Entry Control打开但是查看滚动时,Design看起来很丑。请帮助我。 我已经把图像如何在Android设备中打开键盘时屏幕可见。 我的代码如下所示

<StackLayout Grid.Row="1">
        <StackLayout Padding="20,10,20,20" >
            <Entry x:Name="Txtusername" Placeholder="Name"/>
            <Entry x:Name="TxtPass"
                   IsPassword="True"
                   Placeholder="Password" />
            <StackLayout Padding="0,10">
                <Button x:Name="BtnSign"
                        BackgroundColor="#FFFFCB04"
                        BorderColor="#FFFFCB04"
                        Clicked="BtnSignInClicked"
                        Text="Sign In"
                        TextColor="Black" />
            </StackLayout>
        </StackLayout>
    </StackLayout>

Before keyboard open

After keyboard open

1 个答案:

答案 0 :(得分:0)

在您的WindowSoftInputMode=SoftInput.AdjustPan上,在您的MainActivity类之上添加[Activity()],从FormsApplication开始。

这样可以在键盘处于活动状态时更改布局。我想你不需要在这里滚动。如果要滚动,请在代码中添加滚动视图

<ScrollView>
.//your grid 
.
    <StackLayout Grid.Row="1">
        <StackLayout Padding="20,10,20,20" >
            <Entry x:Name="Txtusername" Placeholder="Name"/>
            <Entry x:Name="TxtPass"
                   IsPassword="True"
                   Placeholder="Password" />
            <StackLayout Padding="0,10">
                <Button x:Name="BtnSign"
                        BackgroundColor="#FFFFCB04"
                        BorderColor="#FFFFCB04"
                        Clicked="BtnSignInClicked"
                        Text="Sign In"
                        TextColor="Black" />
            </StackLayout>
        </StackLayout>
    </StackLayout>
</ScrollView>