私はゲームのスコアマーカーを作っています。スコアが上がるにつれて、マーカーが増えて追加されている余分な数字に対応できるようになります。私は、リサイズをスムーズにして、表示される新しいスコアをアニメートしたい。最初はUILabel
を使用していましたが、背景とテキストを独立してアニメーション化することはできません(同じレイヤーになっているため)。UIVIewサイズの制約を避ける
IはUIView
をサブクラス化し、私は今、独立して、バックグラウンド(UIView
層)とテキスト(CATextLayer
サブ層)をアニメーション化できるように、サブ層としてCATextLayer
を追加することを決定しました。
問題がある私は、xとyの位置の制約を追加する必要がありますというエラーを取得していることまたは幅と高さ。ビューを拡大できるようにするため、サイズの制約を追加することはできません。相対的なので、xまたはyの制約を追加することはできません。不等式制約を使用すると、エラーが発生するため、無用です。
私はILabel
,UIButton
または他のUIViewのサブクラスを使用して問題はないことを知っています。私は代わりにUILabelをサブクラス化して、同じ効果を達成するためにテキストを空のままにしておき、それらの制約について心配する必要はありませんが、それはやや間違っているように感じます。さらに、UILabel
はUIViewのサブクラスなので、おそらくサイズの制約を設定する必要がないというオプションがあると思います。
私はまだUIViewをサブクラス化するために何かできますか、それともUILabelなどをサブクラス化して無料で入手する必要がありますか?