シンプルな iOS テキスト/ラベル アニメーションの最適なソリューションは何ですか? 詳細: ユーザーは、10 ~ 15 語の配列から変更されたテキストを含む iOS 画面上の 1 つのラベルを表示する必要があります。1 語ずつ白い画面で区切られています。画面は 500 ミリ秒です。注意テストは1種類あります。
質問する
2079 次
2 に答える
3
単語をフラッシュしたいだけの場合は、NSTimer
または単にperformSelector
:を使用できます。
@interface ViewController ()
@property (nonatomic, strong) NSArray *words;
@property (nonatomic) NSUInteger wordIndex;
@end
@implementation ViewController
static CGFloat const kWordShowInterval = 0.8;
static CGFloat const kWordHideInterval = 0.4;
- (void)viewDidLoad
{
[super viewDidLoad];
self.words = @[@"one", @"two", @"three", @"four"];
self.wordIndex = 0;
[self showWord];
}
- (void)showWord
{
if (self.wordIndex >= [self.words count])
return;
self.wordLabel.text = self.words[self.wordIndex];
[self performSelector:@selector(hideWord)
withObject:nil
afterDelay:kWordShowInterval];
}
- (void)hideWord
{
self.wordLabel.text = nil;
self.wordIndex++;
if (self.wordIndex < [self.words count])
{
[self performSelector:@selector(showWord)
withObject:nil
afterDelay:kWordHideInterval];
}
else
{
// all done, go ahead and invoke whatever you want to do when done presenting the words
}
}
@end
テキストの表示または非表示のアニメーション(フェードインまたはフェードアウトなど)を実行したい場合は、これをanimateWithDuration
または他のアニメーション構成と組み合わせることができます。
于 2013-01-08T16:18:34.933 に答える
0
通常、Core Animation が最適な方法です。ドキュメントを確認する
于 2013-01-08T15:49:08.517 に答える