作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我们的应用程序中,我们以编程方式动态使用自定义 UITabBarItem(见下文)。我们使用 ImageAssets 来获得暗/亮正确的图像。但它不能 100% 工作:如果我们重新启动应用程序,那就没问题了。如果 iOS 切换到暗模式并且应用程序正在运行,图像将保持亮模式。想知道这是一个错误还是我现在可以设法让它工作......
UIImage *mImage = [UIImage imageNamed:@"tabBar1"];
UIImage *mImageSel = [UIImage imageNamed:@"tabBar1Sel"];
mImage = [mImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
mImageSel = [mImageSel imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
self.tabBarItem = [[UITabBarItem alloc] initWithTitle:nil image:mImage selectedImage:mImageSel];
UIEdgeInsets titleInsets = UIEdgeInsetsMake(-6, 0.0, -6.0, 0.0);
self.tabBarItem.imageInsets = titleInsets;
最佳答案
我们发现以编程方式创建的 UITabBarItems 也存在同样的问题。
我们尝试在 UIViewController.traitCollectionDidChange(:) 中重新创建 TabBarItem,但问题仍然存在。好像是苹果的bug。值得注意的是,这个问题只发生在我们的 SelectedImage 上。默认的非选择状态似乎尊重 UIUserInterfaceStyle 更改(暗模式)。
我们找到了一个临时解决方案:如果您在 UIViewController.traitCollectionDidChange(:) 中将相同的 selectedImage 重新分配给 myViewController.tabBarItem,问题就解决了。
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
self.tabBarItem.selectedImage = mySelectedImage //same image asset that was used in the initializer
}
关于uitabbaritem - UITabBar/UITabBarItem 和 iOS 13 的黑暗模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57011346/
我正在.vimrc中用这些配置我的vim colorscheme。 "Color scheme syntax enable set background = dark colorsche
我是一名优秀的程序员,十分优秀!