2016-12-11 78 views
-2

嗨,我正在致力於塊讀取器應用程序。 ı錯誤應用將'NSString *'發送到類型爲'NSURL *'的參數的指針類型不兼容

 terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSSingleObjectArrayI objectAtIndex:]: index 1 beyond bounds [0 .. 0]' 

,當它得到一個錯誤,並在通知部分,我收到此錯誤

不兼容的指針類型發送'的NSString *爲鍵入「NSURL *」

的參數

FOT的這個碼

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{ 
if([segue.identifier isEqualToString:@"showBlogPost"]){ 
    NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow]; 
    BlogPost *blogPost = [self.blogPost objectAtIndex:indexPath.row]; 

    [segue.destinationViewController setBlogPostURL:blogPost.url]; 
} 

}

我真的不知道爲什麼,由於blogPost.url ??,但爲什麼? 是否有任何建議?

+0

歡迎來到SO。由於我們不知道您的任何數據類型,因此我們無法幫助您調試您的程序。您需要顯示填充數組的代碼,以及您的'self.blogPost'屬性的定義和填充它的代碼。 –

+0

@property(nonatomic,strong)NSMutableArray * blogPost; lite那還是?? –

+0

如果NSMutableArray * blogPost是您的數組,那麼您如何訪問blogPost.url? –

回答

1

關於未捕獲的異常錯誤,

您self.blogPost是空的,當你試圖在索引1 來獲取對象使其無法設置博客帖子變量的值。

Try to check if self.blogPost contains data or empty before assigning. 
關於NSURL錯誤

, 您賽格瑞控制目標變量 「BlogPostURL」 是NSURL類型。 您正試圖設置NSString的值。試試這個:

[segue.destinationViewController setBlogPostURL:[NSURL URLWithString:blogPost.url]]; 

還,請檢查您是否真的打電話賽格瑞目標控制器方法之前獲得的價值blogPost.url。

+0

ohh好tnx你兄弟。太多了。好ı理解這麼好:)) –

相關問題