【问题标题】:UITabBarItem image is changing image when clicked单击时UITabBarItem图像正在更改图像
【发布时间】:2015-03-25 10:27:59
【问题描述】:

我会尽量解释我的问题。

当我的应用程序启动时,它会在 appdelegate 类中检查:

 if([[NSUserDefaults standardUserDefaults] boolForKey:@"checkboxClicked"]){

        tabBarItem3.image = [UIImage imageNamed:@"lock-open"];
        tabBarItem3.title = @"Logga ut";
    }

    else{
        tabBarItem3.title = @"Logga In";
        tabBarItem3.image = [UIImage imageNamed:@"lock.png"];
    }

本质上是决定图像应该是锁定还是解锁并带有相应的标题。现在一切正常,图像就是应该显示的。

场景 1) 用户启动应用程序,图像以“锁定打开”图像开始。稍后,用户转到注销页面并注销用户。之后单击应该更改其图像的 UITabBarItem 时,它仍然显示图像“锁定打开”。但是,当用户单击另一个 UITabBarItem 时,将显示正确的图像。 注意标题始终设置正确。只是图片在做奇怪的事情。

场景 2) 反之亦然,用户以注销等方式启动。

这是我用来更改图像的代码:

  UITabBarItem *item = self.tabBarController.tabBar.items[2];
  item.image = [UIImage imageNamed:@"lock"];
  item.title = @"Logga in";

【问题讨论】:

    标签: ios objective-c iphone xcode uitabbaritem


    【解决方案1】:

    使用以下代码更改UITabBarItem的图像

    UITabBarItem *item0 = [self.tabBar.items objectAtIndex:0];
    item0.image = [[UIImage imageNamed:@"lock.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
    item0.selectedImage = [UIImage imageNamed:@"lock-selected.png"];
    

    【讨论】:

    • 工作就像一个魅力!谢谢
    猜你喜欢
    • 1970-01-01
    • 2013-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多