오늘 "UIRefreshControl"을 사용하기 시작했고 이상한 것들을 발견했습니다.UIRefreshControl weirdness
InterfaceBuilder에서 UIRefreshControl을 만들고 와이어 링하면 모든 선택기가 호출되지 않습니다. IB는 컨트롤이 "value changed"메시지에서 실행되어야한다고 말하며 코드를 호출해야하지만 그렇지 않습니다.
그래서 Interface Builder에서이 작업을 포기하고 코드에서이 작업을 수행하기로 결정했습니다. 그리 많지는 않습니다. 그래서 루틴 내 "viewDidLoad에"내부에이 코드를 넣어 : 그것은 잘립니다하지만, 뷰가 처음 나타날 때 새로 고침 제어가 볼 수
self.refreshControl = [UIRefreshControl new];
[self.refreshControl addTarget:self action:@selector(doStuff:) forControlEvents:UIControlEventValueChanged];
NSMutableParagraphStyle* paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.alignment = NSTextAlignmentCenter;
self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Pull to refresh" attributes:@{NSParagraphStyleAttributeName : paragraphStyle}];
. 사용자가 실제로 테이블을 당길 때까지 표시되지 않는 것이 좋습니다. 웹 서비스를 호출하고 결과가 돌아올 때까지 기다린 다음 표를 채 웁니다. 그래서, 당신은 단지 두 번째 또는 두 번째 컨트롤을 참조하십시오. 하지만 이상하게 보입니다.
질문은 다음과 같습니다.
1. 인터페이스 작성기에서만 컨트롤을 연결할 수없는 알려진 버그입니까?
2.이 컨트롤을 사용자가 실제로보고 싶어 질 때까지 테이블 뷰 컨트롤러에 추가하는 방법이 있습니까?
내보기 컨트롤러에 "여유 크기"= 1000px가있을 때이 버그가있었습니다. 다시 고정으로 변경하면 새로 고침이 올바르게 작동하기 시작했습니다. 스토리 보드에서 "자유형 크기"를 제거하는 것은 – oyatek
입니다. 감사! –