public override bool ResignFirstResponder() { base.ResignFirstResponder(); IsFirstResponderChanged?.Raise(this); if (!string.IsNullOrEmpty(Text)) { return(true); } CATransaction.Begin(); CATransaction.AnimationDuration = placeholderAnimationDuration; placeholderLayer.AffineTransform = CGAffineTransform.MakeIdentity(); placeholderLayer.FontSize = bigPlaceholderSize; CATransaction.Commit(); return(true); }
public override bool BecomeFirstResponder() { base.BecomeFirstResponder(); IsFirstResponderChanged?.Raise(this); if (placeholderLayer.Frame.Top == 0) { return(true); } var yOffset = -placeholderLayer.Frame.Top; CATransaction.Begin(); CATransaction.AnimationDuration = placeholderAnimationDuration; placeholderLayer.AffineTransform = CGAffineTransform.MakeTranslation(0, yOffset); placeholderLayer.FontSize = smallPlaceholderSize; CATransaction.Commit(); return(true); }