【问题标题】:Custom tabbar button does not work自定义标签栏按钮不起作用
【发布时间】:2017-04-26 22:04:22
【问题描述】:

我创建了一个自定义标签栏并在中心位置添加了一个自定义图像。但是,每当我单击该自定义按钮时,它都不会将我带到所选项目。

- (void)viewDidLoad {
    [super viewDidLoad];

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

    CGFloat heightDifference = buttonImage.size.height - self.tabBar.frame.size.height;
    if (heightDifference < 0)
        button.center = self.tabBar.center;
    else
    {
        CGPoint center = self.tabBar.center;
        center.y = center.y - heightDifference/2.0;
        button.center = center;
    }

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

    [self.view addSubview:button];

}

-(void) myAction
{
   // the following line is getting called
    self.tabBarController.selectedIndex = 2;
}

【问题讨论】:

  • 您确认self.tabBarController 不是nil
  • 好像是nil?那我该如何解决呢?
  • 是插座吗?在 Interface Builder 中正确连接。
  • 这不是一个出口。
  • 你需要给属性赋值。你没有提供任何细节,所以我只能说。

标签: ios objective-c tabbar


【解决方案1】:

'self' 似乎是一个标签栏控制器。变化:

self.tabBarController.selectedIndex = 2;

self.selectedIndex = 2;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-26
    相关资源
    最近更新 更多