Я пытаюсь заставить анимацию работать с пользовательским свойством в CALayer.
Но я просто не могу понять, как заставить это работать правильно.Ключ «myCounter» никогда не отправляется в NeedsDisplayForKey.Есть ли какие-то шаги, которые я пропускаю?Ниже я тестирую класс, который добавляю в слой в другом месте.У кого-нибудь есть собственное свойство для анимации с помощью monotouch?
public class TestProperty : CALayer
{
//this line updated based on feedback below**********
public uint myCounter { [Export ("myCounter")] get; [Export setMyCounter:")] set; }
public TestProperty ()
{
CABasicAnimation anim = CABasicAnimation.FromKeyPath("myCounter");
anim.From = NSNumber.FromInt32(1);
anim.To = NSNumber.FromInt32(10);
anim.Duration = 1.0f;
anim.RepeatCount = float.MaxValue;
anim.AutoReverses = true;
this.AddAnimation(anim,null);
}
[Export ("needsDisplayForKey:")]
static bool NeedsDisplayForKey (NSString key)
{
Console.WriteLine("{0}", key.ToString());
if(key.Equals("myCounter"))
{
return true; //never gets here
}
else
return false;
}
}