【问题标题】:Custom UIButton to drill up from table view?自定义 UIButton 从表格视图中向上钻取?
【发布时间】:2011-08-21 12:08:15
【问题描述】:

我放入了一个自定义的“返回”UIBarButtonItem,它来自我在 Photoshop 中制作的图像。我设法让它看起来很好,我的问题是让它工作。

我的按钮什么都不做,我假设是因为我没有为它分配任何操作。我只是不知道这样做的正确语法吗?

这是我的代码

    UIImage *buttonImage = [UIImage imageNamed:@"BackButton.png"];
        UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
        [backButton setBackgroundImage:buttonImage forState:UIControlStateNormal];
        backButton.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);

// Im assuming this is where i need to put the action...
        //[backButton addTarget:self action:@selector(.......) forControlEvents:UIControlEventTouchUpInside];

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] 
                                                 initWithCustomView:backButton];

基本上,我希望我的新自定义后退按钮能够像常规 UITableView 中的默认后退按钮一样工作

问候, 安迪

【问题讨论】:

    标签: ios uitableview uinavigationbar uibarbuttonitem


    【解决方案1】:

    您可以在 IB 中执行此操作,也可以在代码中通过调用 addTarget:action:forControlEvents: for UIControlEventTouchUpInside 在点击按钮时调用方法(操作)来执行此操作。例如:

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

    这在UIControl class reference 中有记录,UIButton 是 UIControl 的子类。

    您需要一个在事件发生时调用的方法,我在上面的代码中将其称为backButtonPressed:。该方法接受一个参数,即发送事件的对象,如下所示:

    -(void)backButtonPressed:(id)sender
    {
        // NOTE: assumes self is your UIViewController
        [self.navigationController popViewControllerAnimated:YES];
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多