В документах для TranslateTo написано:
Чтобы анимировать представление, которое получает сенсорный ввод пользователя снаружи экрана, разработчик должен сначала выложить вид в его окончательном положении, затем переведите вид за пределы экрана и, наконец, оживите вид до его окончательного положения на экране . [выделение мое]
Также в Простые анимации в Xamarin.Forms (в примечании) написано:
Если элемент изначально заложен за пределами экрана, а затем переводится на экран, после перевода макет ввода элемента остается за пределами экрана, и пользователь не может взаимодействовать с ним. Поэтому рекомендуется, чтобы вид располагался в его окончательном положении, а затем выполнялись все необходимые переводы . [выделение мое]
Что это значит в коде?
Согласно комментарию выше , кажется, что ответ таков:
child.X = <destination (which is somewhere that the user can see)> child.TranslateX = <somewhere not seen> child.TranslateTo(0)
(псевдокод, поскольку я не могу проверить его в данный момент)