ある VC から別の VC に int を渡そうとしています。私はこのようにしています。
私の VC1 ではshowDetail
、prepareForSegue メソッドを呼び出すときにセグエを実行しています。このように見えます。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSIndexPath *indexPath = (NSIndexPath *)sender;
News *news = [arrNews objectAtIndex:indexPath.row];
NSLog(@"news id is %@",news.new_id);
if ([segue.identifier isEqualToString:@"showDetail"]) {
[segue.destinationViewController setNewsId:(int)news.new_id];
}
}
ログでは、正しい番号が返されます。VC2 で、このような int を宣言しました。
@property (nonatomic) int newsId;
そして、私の setMethod は次のようになります。
-(void)setNewsId:(int)newsId{
NSLog(@"news id is %d",newsId);
self.newsId = newsId;
}
私が実行したとき、私はすべての大きな数字でループに入りました。誰かがこの問題で私を助けることができますか?