1

我有一个cameraview,我正在使用TableViewController 推送另一个视图。我可以使用导航栏控制器从我的主视图中推送第二个视图。但是第二个视图(表格视图)的后退按钮没有响应。我不知道为什么。

提前致谢。

@WrightCS 感谢您的即时回复。

在我的应用程序委托中。

ViewController *vc= [[ViewController alloc] init];
UINavigationController *navController = [[UINavigationController alloc]    initWithRootViewController:vc];
[self.window setRootViewController :navController];
[self.window makeKeyAndVisible];
return YES;

现在我正在使用一个临时按钮来推送视图。

-(IBAction)testButtonPressed {
    TableView *tableVC = [[TableView alloc] initWithStyle:UITableViewStylePlain];
    [self.navigationController pushViewController:tableVC animated:YES];
}
4

3 回答 3

0
  -(IBAction)testButtonPressed {
        TableView *tableVC = [[TableView alloc] initWithStyle:UITableViewStylePlain];

        UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
        self.navigationItem.backBarButtonItem = backBarButtonItem;
        [backBarButtonItem release];

        [self.navigationController pushViewController:tableVC animated:YES];
    }

我想这会对你有所帮助。

于 2012-04-30T04:21:58.810 回答
0
- (void)viewDidLoad
{      
    UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self  action:@selector(backButtonDidClicked:)];
    self.navigationItem.backBarButtonItem = backBarButtonItem;
    [backBarButtonItem release];
}

-(void)backButtonDidClicked :(id)sender
{  
    [self.navigationController popViewControllerAnimated:YES];
}

它应该适合你!!

于 2012-04-30T06:34:03.313 回答
0

您的后退按钮可能不起作用的原因有几个:

  • 您正在使用自定义 UIButton 并且框架/边界不正确,您可以使用[yourButtonName sizeToFit] 它来正确调整其大小。

  • 您正在以编程方式添加按钮,而不是添加点击事件:

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

不要忘记您的活动。

...
-(void)yourButtonNamedTapped:(id)sender
{
...
}

文档:http: //developer.apple.com/library/ios/#documentation/uikit/reference/UIControl_Class/Reference/Reference.html

如果您使用的是 UINavigationController,则在您使用 [self.navigationController pushViewController:viewControllerName] 时会自动显示 back。

于 2012-04-30T03:52:07.643 回答