我正在尝试使用MSBand文档中的代码添加一个磁贴。
编辑:我从来没有得到这两行的日志输出: NSError *error;
MSBIcon *smallIcon = [MSBIcon iconWithUIImage:[UIImage imageNamed:@"MSB_white_x"] error:&error];
if(error)NSLog(@"small icon error: %@", error);
MSBIcon *tilecon = [MSBIcon iconWithUIImage:[UIImage imageNamed:@"MSB_white_xx"] error:&error];
if(error)NSLog(@"big icon error: %@", error);
NSUUID *tileID = [NSUUID UUID];
MSBTile *tile = [MSBTile tileWithId:tileID name:@"Something" tileIcon:tilecon smallIcon:smallIcon error:&error];
if(error)NSLog(@"tile creation error: %@", error);
[self.sensor.client.tileManager addTile:tile completionHandler:^(NSError *error) {
NSLog(@"adding tile...");
if(error)NSLog(@"error adding tile to band: %@", error);
}];
但是当我尝试运行应用程序时,我收到以下警告:
警告:尝试在PersonalStatisticsViewController上显示MSBAddTileDialogViewController_iOS:0x14f534e20:0x14f5116b0,其视图不在窗口层次结构中!
我注意到“视图控制器”始终是根视图控制器,无论如何。因此,当我第一次从另一个视图控制器中获得警告而不是root时,我尝试将根更改为当前所在的VC。我运行代码 - ()viewDidAppear 我真的不明白为什么我会收到这个警告,主要是因为我认为没有理由让磁贴创建尝试向app VC添加任何内容(它应该只是将磁贴添加到MSBAND中)。
有没有人知道最新情况? 提前谢谢。
答案 0 :(得分:0)
你在哪里进行addTile调用?
如果您在viewDidLoad中进行呼叫,则会看到此问题。您应该将addTile调用移动到viewDidAppear。
引用此StackOverflow问题:whose view is not in the window hierarchy