请遵循以下代码:
DetailsViewController.h
#import <UIKit/UIKit.h>
@interface DetailsViewController : UIViewController
@property (strong , nonatomic) IBOutlet UILabel *TitleLabel;
@property (strong , nonatomic) IBOutlet UILabel *DescriptionLabel;
@property (strong , nonatomic) IBOutlet UIImageView *ImageView;
@property (strong , nonatomic) NSArray *DetailModal;
@end
TableViewController.m
#import "DetailsViewController.h"
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"ShowDetails"]) {
DetailsViewController *detailsviewcontroller = [segue destinationViewController];
NSIndexPath *myIndexPath = [self.tableView indexPathForSelectedRow];
int row = [myIndexPath row];
NSLog(@"Tanim = %i",row);
detailsviewcontroller.DetailModal = @[_Title[row],_Description[row], _Images[row]];
}
}
我可以使用上面的代码并设置segue标识符&#34; ShowDetails&#34;从我的故事板,但不要转到detailsViewController窗口。任何人都可以帮助解决这个问题或建议我????
答案 0 :(得分:1)
我看到了你的错误。您链接segue的Storyboard中的ViewController不是我假设的DetailViewController类。还要检查Segue名称是否为“ShowDetails”
答案 1 :(得分:0)
可能您的[segue destinationViewController]
不是DetailsViewController
。在该行之后添加断点,并查看destinationViewController
的类型。它可以是UINavigationController
或UITabBarController
。在这种情况下,从viewcontrollers
数组中访问目标控制器。