同様の質問を確認しましたが、私の場合はどれもうまくいきませんでした(それらはすべて、私が持っていない関数 loadView について言及しています)。やりたいことはとても簡単だと思いますが、なぜそれが起こっているのかわかりません。
セル内のボタンを押すと、プログラムで新しいView Controllerが開きます。これが私のコードです:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
dealViewController=[[DealViewController alloc]init];
if (indexPath.row==0){
[self presentModalViewController:(UIViewController *)dealViewController animated:TRUE];
}
}
そして私の他のコントローラーで:
@implementation DealViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
NSLog(@"Opened");
}
これOpened
は印刷されますが、シミュレーターには黒い画面が表示されます。私もこれを試しました:
dealViewController=[[DealViewController alloc]initWithNibName:@"DealViewController" bundle: nil];
しかし、セグメンテーション違反が発生します。私は何を間違っていますか?