加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 将阴影添加到NavBar的标题

发布时间:2020-12-16 07:30:59 所属栏目:百科 来源:网络整理
导读:我从一位同事那里得到了一个程序,他正在使用.xib文件来设置他的视图. (作为一个硬核编码器,我自己从未使用过IB ……) 所以他正在设置他的ViewControler并且他有一个NavBar(我在.xib文件中找不到!). 我想在标题中添加阴影. 如果我正在创建NavBar,相关代码将
我从一位同事那里得到了一个程序,他正在使用.xib文件来设置他的视图.
(作为一个硬核编码器,我自己从未使用过IB ……)
所以他正在设置他的ViewControler并且他有一个NavBar(我在.xib文件中找不到!).

我想在标题中添加阴影.

如果我正在创建NavBar,相关代码将是这样的:

textViewTitle.layer.shadowOpacity = 2.0;
textViewTitle.layer.shadowRadius = 3.0;
textViewTitle.layer.shadowOffset = CGSizeMake(2.0,3.0);

这很好.
挖掘我发现现在我需要使用它:

NSDictionary *navbarTtlAts = [NSDictionary dictionaryWithObjectsAndKeys:
                             [UIColor whiteColor],UITextAttributeTextColor,[UIColor blackColor],UITextAttributeTextShadowColor,[NSValue valueWithUIOffset:UIOffsetMake(2.0,3.0)],UITextAttributeTextShadowOffset,nil];
[self.navigationController.navigationBar setTitleTextAttributes:navbarTtlAts];

虽然这有效,但我找不到如何添加shadowOpacity& shadowRadius的东西.

我发现我可以在NSDictionary中添加以下内容,但它不起作用……

[NSNumber numberWithFloat: 2.0],@"shadowOpacity",[NSNumber numberWithFloat: 3.0],@"shadowRadius",

有任何想法吗?

解决方法

您应该将这些键用于阴影颜色和偏移.

UITextAttributeTextShadowColor 
UITextAttributeTextShadowOffset

无法将阴影半径指定为文本属性.

如果你真的想要一个自定义阴影,你可以创建自己的UILabel并像第一个例子中那样设置阴影.然后,您将该标签设置为视图控制器UINavigationItem的titleView.

您必须自己更新文本(导航控制器将不再自动为您执行此操作).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读