关键词:
【中文标题】如何使用外观代理正确更改 UITabBar 的显示方式?【英文标题】:How can I correctly change the way a UITabBar appears using the appearance proxy? 【发布时间】:2012-07-04 12:43:52 【问题描述】:由于我正在开发 iOS >= 5.0 应用程序,因此我正在尝试通过外观代理更改主要 UI 组件的外观。
在处理UITabBar
组件时,我通过[[UITabBar appearance] setTintColor:]
方法正确地将其tintColor
更改为浅灰色阴影。但是这样做,包含在栏中的UITabBarItem
s 是完全不可能看到的,因为它们在标题标签中保留了旧的灰色/白色。
我尝试通过[UITabBarItem appearance]
代理更改它们的外观,但无法使它们可见。
谁能建议我解决这个问题的方法?谢谢!
【问题讨论】:
【参考方案1】:您好,这将适用于您想要做的事情
// Customize the UIBarButtonItem
UIImage *button30 = [[UIImage imageNamed:@"button_textured_30"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)];
UIImage *button24 = [[UIImage imageNamed:@"button_textured_24"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)];
[[UITabBarItem appearance] setBackgroundImage:button30 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[[UITabBarItem appearance] setBackgroundImage:button24 forState:UIControlStateNormal barMetrics:UIBarMetricsLandscapePhone];
[[UITabBarItem appearance] setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor colorWithRed:82.0/255.0
green:82.0/255.0
blue:82.0/255.0
alpha:1.0], UITextAttributeTextColor,
[UIColor colorWithRed:242.0
green:237.0
blue:237.0
alpha:1.0], UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0,1)], UITextAttributeTextShadowOffset,
[UIFont fontWithName:@"Helvetica" size:0.0], UITextAttributeFont,nil]
forState:UIControlStateNormal];
快乐编码:)
【讨论】:
我认为setTitleTextAttributes:
方法仅适用于 iOS >= 6.0。这两张图是什么样子的?
这些用于设置按钮的背景图片
我认为您应该将 UIBarButtonItem
更改为 UITabBarItem
以使此解决方案起作用。
抱歉,这可能与UITabBarItem
也可以正常工作
是的!您介意更新答案,以便我接受吗?Swift 中的外观代理 (iOS)
...这种语法不起作用,有没有人想出如何在segmentedControl或UITabBar等控件上设置标题文本属性?我想我很接近了segmentedControl.titleTextAttributesForState(UIContro 查看详情
如何更改 NetBeans GUI Designer Preview 中的外观?
】如何更改NetBeansGUIDesignerPreview中的外观?【英文标题】:HowtochangethelookandfeelinNetBeansGUIDesignerPreview?【发布时间】:2011-09-3006:38:48【问题描述】:使用NetBeansGUIBuilder时,“预览设计”功能会显示具有系统外观的面板(例如Windows)... 查看详情
UITabBar 外观问题 + NSThreads
】UITabBar外观问题+NSThreads【英文标题】:UITabBarappearanceproblem+NSThreads【发布时间】:2009-11-0619:32:47【问题描述】:我在尝试将UITabBar添加为AppDelegate窗口的子视图时遇到问题。上面的链接显示了屏幕混乱状态的截图。TabBarInAMessyStat... 查看详情
UITabBar 图像在 iOS 7 上无法正确显示
】UITabBar图像在iOS7上无法正确显示【英文标题】:UITabBarimagesnotshowingproperlyoniOS7【发布时间】:2015-05-1810:47:34【问题描述】:我有这个标签栏在iOS8上正常工作,但在iOS7上没有,有人能指出我正确的方向吗,我使用JSON文件在加载... 查看详情
如何防止使用 UIAppearance 和 UIView 的 tintColor 更改所有 UITabBar 图标颜色?
】如何防止使用UIAppearance和UIView的tintColor更改所有UITabBar图标颜色?【英文标题】:HowtopreventusingUIAppearancewithUIView\'stintColorfromchangingallUITabBariconcolours?【发布时间】:2015-10-1416:02:12【问题描述】:如果我执行UIView.appearance().tintColor... 查看详情
当我更改 UITabBar 的颜色时,它只显示为灰色
】当我更改UITabBar的颜色时,它只显示为灰色【英文标题】:WhenIchangethecolorofUITabBaritonlyshowsupingray【发布时间】:2012-12-0306:42:59【问题描述】:我在选项卡式应用的各种视图控制器的“viewDidLoad”中使用以下代码。UIColor*tabBarColor=... 查看详情
如何使用外观代理设置 UINavigationItem 的 backBarButtonItem?
】如何使用外观代理设置UINavigationItem的backBarButtonItem?【英文标题】:HowtosettheUINavigationItem\'sbackBarButtonItemwithanappearanceproxy?【发布时间】:2015-05-0716:39:29【问题描述】:我想将backBarButtonItem设置为我的应用程序中每个导航栏的自... 查看详情
如何使用 UITabBar 更改视图(不使用 UITabBarController 或 addSubview)?
】如何使用UITabBar更改视图(不使用UITabBarController或addSubview)?【英文标题】:HowtochangeviewwithUITabBar(withoutusingUITabBarControlleroraddSubview)?【发布时间】:2014-08-0712:55:41【问题描述】:我已经尝试了很多来完成这项工作。我不想使用... 查看详情
UITabBar 背景图像未正确显示
】UITabBar背景图像未正确显示【英文标题】:UITabBarbackgroundimagenotshowingproperly【发布时间】:2016-07-2703:28:07【问题描述】:我制作了自定义的UITabBar类并尝试设置背景图片。tabBar.backgroundImage=UIImage(named:"my_image")?.imageWithRenderingMode(.A... 查看详情
UITabBar 图标未正确显示
】UITabBar图标未正确显示【英文标题】:UITabBarIconsnotappearingcorrectly【发布时间】:2018-05-2410:34:39【问题描述】:我正在开发一个iOS应用程序。我有一个带有5个视图控制器的标签栏。所有的图标都在Storyboard中设置:当我启动应用... 查看详情
检测自定义按钮的 UIAppearance 代理中的更改
...个自定义按钮,它有几个属性标记为UI_APPEARANCE_SELECTOR。如何通过外观代理检测属性何时更改?不调用属性设置器。属性确实发生了变化,因为它在drawRect:中具有正确的值,但我仍然需要 查看详情
如何更改 UITabbar 选定的颜色?
】如何更改UITabbar选定的颜色?【英文标题】:howtochangeUITabbarselectedcolor?【发布时间】:2010-03-2408:44:23【问题描述】:据此post目前,Apple是否也会拒绝此代码?以及如何实现苹果将批准的内容?@interfaceUITabBar(ColorExtensions)-(void)reco... 查看详情
UITabBar 外观适用于 iOS6 但不适用于 iOS 5
】UITabBar外观适用于iOS6但不适用于iOS5【英文标题】:UITabBarappearanceworksoniOS6butnotiOS5【发布时间】:2013-01-1606:46:10【问题描述】:我有一些代码来自定义TabBar。我使用外观框架来做到这一点。该应用程序是iOS5+,因此据我了解应该... 查看详情
如何在不更改 UITabBar 标题的情况下更改 UINavigationBar 标题?
】如何在不更改UITabBar标题的情况下更改UINavigationBar标题?【英文标题】:HowtochangeUINavigationBartitlewithoutchangingUITabBartitle?【发布时间】:2016-03-1812:31:59【问题描述】:我在UITabBarController上嵌入了一个UINavigationController。我的目标是... 查看详情
使用不是 rootViewController 的 TabBarViewController 更改 UITabBar 的图标
】使用不是rootViewController的TabBarViewController更改UITabBar的图标【英文标题】:ChangetheiconsoftheUITabBarwithaTabBarViewControllerwhichisnottherootViewController【发布时间】:2014-11-2517:37:57【问题描述】:我想更改我的UITabBar的图标。是的,***上有... 查看详情
如何正确更改 odoo 12 视图显示?
】如何正确更改odoo12视图显示?【英文标题】:Howtochangeodoo12viewdisplayproperly?【发布时间】:2019-11-1021:52:09【问题描述】:嗨,如何更改odoo12view.xml以添加更多列,或在模块中添加一些内容?我试图使用这样的命令从头开始创建odo... 查看详情
如何隐藏或更改下一个队列项目的倒计时外观?
】如何隐藏或更改下一个队列项目的倒计时外观?【英文标题】:Howtohideorchangeappearanceofthecountdownfornextqueueitem?【发布时间】:2019-07-0311:27:58【问题描述】:我正在开发CAFCastReceiver,但对队列功能有疑问。cast-media-player提供了用于... 查看详情
解雇后如何以编程方式更改UITabBar选定的索引?
】解雇后如何以编程方式更改UITabBar选定的索引?【英文标题】:HowtoprogrammaticallychangeUITabBarselectedindexafterDismiss?【发布时间】:2017-06-1203:44:19【问题描述】:我在UITabBarViewcontroller上有一个模态UIViewController,我想关闭它,然后更... 查看详情