Редактор Xamarin.forms прокручивает курсор за пределы рамки и отступает на iOS при появлении клавиатуры - PullRequest
0 голосов
/ 15 октября 2019

enter image description here Итак, я работал с редактором xamarin.forms, но я не могу заставить его вести себя так, как я хочу на iOS. Проблема заключается в том, что когда клавиатура поднимается, позиция курсора сначала перемещается за пределы экрана, а затем прокручивается обратно туда, где она должна быть.

Мне удалось это исправить, отключив прокрутку для редактора в iOS и поместив редактор во внешний вид прокрутки. Я также поместил некоторый код в метод Focused редактора для прокрутки до положения вертикальной прокрутки с помощью editorScroll.ScrollToAsync ().

После этого я понял, что размер редактора будет слишком мал на старых iPhone, поэтому я переключил свойство IsVisible текста инструкции в фокусированных и несфокусированных методах редактора, как вы видите на фотографиях. Как бы то ни было, мое исправление больше не работало, и с тех пор я ни на что не способен. Любые идеи о том, как я мог бы подойти к этому?

private void feedbackText_Focused(object sender, FocusEventArgs e)
{
    InstructionsHeader.IsVisible = false;
    if (Device.RuntimePlatform == Device.iOS)
    {
        double scrollPosition = editorScroll.ScrollY;
        editorScroll.ScrollToAsync(0, scrollPosition, false);
    }
}

private void feedbackText_Unfocused(object sender, FocusEventArgs e)
{
    InstructionsHeader.IsVisible = true;
}
...