문제

다음 코드를 사용하여 uiatttonbaritem 내부에서 작동하도록 UiactivityIndicatorView를 얻으려고합니다.

- (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];
}

활동 표시기가 표시되는 시점까지 작동하지만 버튼 막대 안에는 그렇지 않습니다.

여기서 내가 잘못하고있는 일에 대한 아이디어가 있습니까?

도움이 되었습니까?

해결책

이것은 도구 모음의 왼쪽에 원할 때 활동 표시기가 나타나기 위해 한 일입니다.

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];

다른 팁

그러나 그것은 버튼 막대 안에 있지 않습니다

그리고 어디에 있습니까?

당신이 설정하는 프레임이 틀렸을까요? 당신은 시도 했습니까? CGRectZero 또는 무작위 (예 : CGRectMake(40,60,20,20))? 지표의 위치에 어떤 영향을 미칩니 까?

당신은 설정을 시도 했습니까? width 항목의 속성?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top