Искам да намеря идентификатора на меката клавиатура вAndroid за определяне на височината на клавиатурата. Крайната цел е, че искам да препозиционирам изглед на екрана вертикално, за да бъде центриран между горната част на клавиатурата и долната част на лентата на състоянието. Мога да получа височината на лентата на статуса със следния код:
int statusBarHeight = 0;
int resourceId = Resources.GetIdentifier("status_bar_height", "dimen", "android");
if(resourceId > 0) {
statusBarHeight = Resources.GetDimensionPixelSize(resourceId);
}
Мога ли да получа височината на меката клавиатура в aподобен начин? Аз използвам Xamarin, защото споделям обратна връзка между приложението си за iOS и приложението за Android, но кодът изглежда доста подобен за Android. Също така създавам моите възгледи изцяло в код, който предпочитам; така че моят въпрос е как мога да получа височината на клавиатурата в кода, за да позиционирам изглед в код?
Отговори:
0 за отговор № 1Можете да направите това с помощта на ViewTree наблюдател, С основния изглед ще можете да изчислите новия размер, когато се появи клавиатурата.
Въпросът по-долу може да ви помогне, тъй като ми помогна:
Има ли някакъв начин в Android да получите височината на виртуалната клавиатура на устройството