런타임까지 알 수없는 페이지 번호로 페이지 기반 앱을 만들고 싶습니다.런타임시 동적 페이지 기반 앱을 만드는 법 Apple Watch
API 호출을하고 얼마나 많은 페이지를 만들면 얼마나 많은 페이지가 필요한지 확인하는 방법이 있습니까? 처음에로드 작업 아이콘이 두 번 나타나는 awakeWithContext에서 다시로드하지 않고 앱이로드 될 때이 작업을 수행하고 싶습니다.
런타임까지 알 수없는 페이지 번호로 페이지 기반 앱을 만들고 싶습니다.런타임시 동적 페이지 기반 앱을 만드는 법 Apple Watch
API 호출을하고 얼마나 많은 페이지를 만들면 얼마나 많은 페이지가 필요한지 확인하는 방법이 있습니까? 처음에로드 작업 아이콘이 두 번 나타나는 awakeWithContext에서 다시로드하지 않고 앱이로드 될 때이 작업을 수행하고 싶습니다.
속성 검사기의 스토리 보드에서 먼저 인터페이스 컨트롤러에 대한 식별자를 설정 한 다음이 식별자를 페이지 개수만큼 가변 배열에 추가해야합니다. API 호출의 결과로 'objects'라는 이름의 데이터 객체 배열이 있다고 가정합니다. WKInterface Controller의 'presentControllerWithNames : contexts :'메서드를 호출하여 뷰의 페이지 기반 탐색을 모달로 표시합니다.
NSMutableArray *controllers=[[NSMutableArray alloc] init];
for (NSInteger i=0; i<[objects count]; ++i) {
[controllers addObject:@"yourInterfaceControllerIdentifier"];
}
[self presentControllerWithNames:controllers contexts: objects];
당신은 너무 좋아, 내가 필요로하는 페이지를로드, 그것의 -init
방법에 루트 인터페이스 컨트롤러를 작성했다 내가했던 WKInterfaceController
의 클래스 메소드 +reloadRootControllersWithNames:contexts:
을 사용하고 있습니다 :
를- (void)init {
self = [super init];
if (self) {
[WKInterfaceController reloadRootControllersWithNames:@[@"Controller1", @"Controller2"]
contexts:nil];
}
return self;
}
컨트롤러 이름은 스토리 보드에 정의한 식별자입니다.
'presentControllerWithNames'를 실행하면 다른 레이어가 시계에 놓입니다. 시계는 root interfaceController를로드하고 루트 interfaceController 상단에 모달로 표시합니다. 두 번째 레이어를 피하고 싶습니다. reloadRootControllersWithNames를 수행하면 동일한 루트 레이어에서 페이지를 얻을 수 있지만 두 번 로딩 아이콘이 표시되지 않도록하고 싶습니다. –