2015-01-16 3 views
4

Stackoverflowers!UIRefreshControl 색상 문제

다시 한 번 나는 하이브 정신에 도움을 요청합니다. 이번에는 매우 특이한 문제이며, 불행하게도 나는 그 문제를 해결할 수 없습니다.

이 문제는 UIRefreshControl을 사용하여 새로 고침 메커니즘에 대한 풀다운과 관련됩니다. 풀다운 자체가 시작되면 풀다운이 잘 작동합니다. 로딩을 수동으로 트리거하고 싶을 때 잘 동작하지만 하나의 블로킹 문제가 있습니다 - 작동 표시기의 색상이 설정된 색조로 변경되지 않습니다.

-viewDidLoad

_publicationsRefreshControl = [[UIRefreshControl alloc] init]; 
NSAttributedString *attributedTitle = [[NSAttributedString alloc] initWithString:NSLocalizedString(localizationRefreshControlTitle, nil) attributes:@{NSFontAttributeName : [UIFont fontWithName:fontLatoRegular size:14], NSForegroundColorAttributeName : [UIColor whiteColor]}]; 
_publicationsRefreshControl.attributedTitle = attributedTitle; 
_publicationsRefreshControl.tintColor = [UIColor whiteColor]; 
[_publicationsRefreshControl addTarget:self action:@selector(refreshPublications:) forControlEvents:UIControlEventValueChanged]; 
[self.collectionView addSubview:_publicationsRefreshControl]; 

이 제대로 UIRefreshControl 초기화합니다 그리고 당신은 CollectionView 풀다운 때 실제로 작업을 수행

. 나는 다음과 같은 방법을 사용하면

:

- (void)action { 
[_publicationsRefreshControl beginRefreshing]; 
[_collectionView setContentOffset:CGPointMake(0, _collectionView.contentOffset.y - _publicationsRefreshControl.frame.size.height) animated:YES]; 
[_publicationsRefreshControl sendActionsForControlEvents:UIControlEventValueChanged]; } 

수동으로 새로 고침을 시작을 작동 표시등의 색이 흰색으로 변경되지 않습니다. 기본 색상으로 유지됩니다. 가능한 모든 배치 조합에서 작업 메서드의 tintColor 속성을 설정하려고했지만 아무 소용이 없습니다.

재미있는 점은 컬렉션보기를 풀고 처음 새로 고침을 시작한 다음 수동으로 새로 고침을 시도하면 색상이 흰색으로 올바르게 표시됩니다. 색상 문제는 먼저 수동으로 새로 고치려고 할 때만 나타납니다.

다른 옵션은 나는 시도했다 :

  1. 는 tintColorDidChange를 호출하는 시도
  2. 수동으로 내가 어떤 도움을 누군가가 제공 기꺼이 감사

기본 ActivityIndicatorView의 스타일을 변경하는 시도 :)

+0

내가 작동하게 만들었습니까? – va05

+0

나는 두렵다. 수동으로 새로 고치는 동안 새로 고침 컨트롤을 표시하지 않습니다. – D6mi

답변

2

시도 :

[_myRefreshControl endRefreshing]; 
_myRefreshControl.tintColor = [UIColor whiteColor]; 

나를 위해 일했습니다!