我的屏幕没有移动下一个屏幕上的按钮点击iOS?

时间:2014-10-30 09:59:43

标签: ios objective-c

我想将一个屏幕移动到下一个并为其编码,但是在按钮点击时它不会在下一个屏幕上移动。这段代码中的问题是什么。

我想将一个屏幕移动到下一个并为其编码,但是在按钮点击时它不会在下一个屏幕上移动。这段代码中的问题是什么。

smsDisplayViewController.h

@interface smsDisplayViewController : UIViewController<UITextFieldDelegate>
{

UIButton *btncomment;

}

- (IBAction)btncomment:(id)sender;


@property(strong,nonatomic)UIButton *btncomment;

@end


smsDisplayViewController.m

@implementation smsDisplayViewController
@synthesize smsdisplay,Id,btncomment;

- (IBAction)btncomment:(id)sender
{
    CommentScreenViewController *viewController = [[CommentScreenViewController alloc]
                                                   initWithNibName:@"CommentScreenViewController" bundle:nil];

    [self.navigationController pushViewController:viewController animated:YES];
    NSLog(@"btn press");
}

[btncomment addTarget:self action:@selector(btncomment:)
     forControlEvents:UIControlEventTouchUpInside];

我想将一个屏幕移动到下一个并为其编码,但是在点击按钮时它不会在下一个屏幕上移动。 我想将一个屏幕移动到下一个屏幕并为其编码,但是在点击按钮时它不会在下一个屏幕上移动。

2 个答案:

答案 0 :(得分:1)

如果您不想使用NavigationController,请使用以下代码

- (IBAction)btncomment:(id)sender
{
   CommentScreenViewController *nextViewController = [[CommentScreenViewController alloc]  initWithNibName:@"CommentScreenViewController" bundle:nil]; 
   [self presentViewController:nextViewController animated: YES completion: nil];
}

答案 1 :(得分:0)

我认为您的 self 不是navigationController,因此属性

self.navigationController

返回nil!

如果需要,您可以使用故事板在没有导航控制器的情况下切换控制器或以模态方式显示新控制器:

UIViewController *newViewController = [[UIViewController alloc] init];
[self presentViewController: newViewController animated: YES completion: nil];