2

次のコードを使用して、UIActivityIndi​​catorViewをUIButtonBarItem内で機能させようとしています。

- (void)showActivityIndicator
{
    UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
    [activityIndicator startAnimating];

    UIBarButtonItem *activityBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
    [activityIndicator release];

    self.navigationItem.rightBarButtonItem = activityBarButtonItem;
    [activityBarButtonItem release];
}

アクティビティインジケータが表示されるまで機能しますが、ボタンバーの内側にはありません。

誰かがここで何が間違っているのかについて何か考えがありますか?

4

2 に答える 2

3

これは、ツールバーの左側にアクティビティインジケーターを表示したいときに表示するために行ったことです。

activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0, 0.0, 25.0, 25.0)];
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleGray;
activityIndicator.hidesWhenStopped = YES;

UIBarButtonItem *btnActivity = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
NSMutableArray *tItems = [self.toolbar.items mutableCopy];
[tItems insertObject:btnActivity atIndex:0];
self.toolbar.items = tItems;
[tItems release];

次に、コードでアクティビティインジケーターを表示したい場合は、通常の方法で使用します。

[activityIndicator startAnimating];

そして、私がもうそれを見たくないとき:

[activityIndicator stopAnimating];
于 2010-06-09T16:02:57.517 に答える
0

ボタンバーの中にはありません

そして、それはどこにあるのか?

設定しているフレームが間違っている可能性がありますか?CGRectZero何かランダムなもの(例)を試しましたかCGRectMake(40,60,20,20)?インジケーターの位置に影響はありますか?

widthアイテムのプロパティを設定してみましたか?

于 2010-01-10T18:18:13.653 に答える