Вы должны добавить перевод вручную на фокус ввода.Попробуйте следующий код в конструкторе:
this.entryname.Focused += (s, e) => { SetLayoutPosition(onFocus: true); };
this.entryname.Unfocused += (s, e) => { SetLayoutPosition(onFocus: false); };
Затем после просто вставьте ниже метод:
void SetLayoutPosition(bool onFocus)
{
if (onFocus)
{
if (Device.RuntimePlatform == Device.iOS)
{
this.CenteredStackLayout.TranslateTo(0, -100, 50);
}
else if (Device.RuntimePlatform == Device.Android)
{
this.CenteredStackLayout.TranslateTo(0, -100, 50);
}
}
else
{
if (Device.RuntimePlatform == Device.iOS)
{
this.CenteredStackLayout.TranslateTo(0, 0, 50);
}
else if (Device.RuntimePlatform == Device.Android)
{
this.CenteredStackLayout.TranslateTo(0, 0, 50);
}
}
}
Вы можете изменить «50» на любое значение в соответствии с вашими требованиями.