2

私が行った場合

zPosition = 3;

そしてすぐに私はメソッドを実行します

string = [[NSString alloc]initWithFormat:@"%i", (NSInteger)shape.zPosition];'
label.text = string;'

その場合、ラベルには zPosition の誤った値が表示されます。ただし、遅延後にメソッドを実行すると機能します。

そこで何が起こっているのですか?zPosition が作動するのに少し時間がかかりますか? それとも私は間違った方法で何かをしているのですか?

これが私が話していることの要点の例ですhttps://gist.github.com/4670390

4

1 に答える 1

1

残念ながら、はい、それは一瞬かかります。

これが発生している「理由」に関する答えは、アニメーションの継続時間がAPIで暗黙的に0.0001秒に設定されていたということです。プロパティのアニメーション化が完了する前に、への即時呼び出し[self updateLabels]が実際に呼び出されていました。zPosition

これは実際にはC4で追跡したバグであり、githubで利用できる完全なプロジェクトで修正しましたが、インストーラー/プロジェクトテンプレートに組み込まれるまでにはしばらく時間がかかります。

于 2013-01-31T05:39:17.343 に答える