Прокси-объект ObjectAnimator для Animate TopMargin не может найти параметр / получатель
Мы пытаемся использовать прокси объектаниматора для анимации свойства TopMargin в Android (Xamarin).
Однако мы получаем эту ошибку:
[PropertyValuesHolder] Не удалосьнайти метод установки / получения для свойства TopMargin с типом значения float
Примечание: мы попробовали TopMargin, topMargin, GetTopMargin, getTopMargin и т. Д., Полагая, что это может быть проблемой преобразования оболочки между Java и C #, но это не так.это похоже на дело.
Наш код в Activity запускает анимацию:
translation = new int[] {0, 300};
var anim2 = ObjectAnimator.OfInt( new MarginProxyAnimator(myview), "TopMargin",translation);
anim2.SetDuration(500);
anim2.Start();
Наш прокси класс:
public class MarginProxyAnimator : Java.Lang.Object
{
///... other code...
public int getTopMargin() {
var lp = (ViewGroup.MarginLayoutParams)mView.LayoutParameters;
return lp.TopMargin;
}
public void setTopMargin(int margin) {
var lp = (ViewGroup.MarginLayoutParams)mView.LayoutParameters;
lp.SetMargins(lp.LeftMargin, margin, lp.RightMargin, lp.BottomMargin);
mView.RequestLayout();
}
}
Любой совет? будет полезен указатель на рабочий образец Xamarin с использованием прокси.
Благодарю.