将磁贴添加到MS Band警告(iOS)

时间:2015-04-15 20:22:14

标签: ios objective-c microsoft-band

我正在尝试使用MSBand文档中的代码添加一个磁贴。

编辑:我从来没有得到这两行的日志输出:
 NSLog(@“添加瓷砖......”);
if(错误)NSLog(@“将tile添加到band:%@”,错误);
,我发现很奇怪

 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中)。

有没有人知道最新情况? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

你在哪里进行addTile调用?

如果您在viewDidLoad中进行呼叫,则会看到此问题。您应该将addTile调用移动到viewDidAppear。

引用此StackOverflow问题:whose view is not in the window hierarchy