jcr*_*son 13 iphone objective-c uinavigationcontroller ios
我需要在我的iPhone应用程序中更改一个视图控制器的导航栏标题文本的大小.我正在使用iOS5,并尝试了以下代码:
if ([self.tabBarItem respondsToSelector:@selector(setTitleTextAttributes:)]) {
NSLog(@"*** Support method(iOS 5): setTitleTextAttributes:");
[self.tabBarItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont,
[UIColor blackColor], UITextAttributeTextColor,
[UIColor grayColor], UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0.0f, 1.0f)], UITextAttributeTextShadowOffset,
nil]];
}
Run Code Online (Sandbox Code Playgroud)
但是这仅适用于tabBarItem.
Gaj*_*han 25
你已经得到了它,但你也可以使用以下属性方法.
对于颜色,
NSDictionary *attributes=[NSDictionary dictionaryWithObjectsAndKeys:[UIColor RedColor],UITextAttributeTextColor, nil];
self.navigationController.navigationBar.titleTextAttributes = attributes;
Run Code Online (Sandbox Code Playgroud)
对于尺寸,
NSDictionary *size = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"Arial" size:17.0],UITextAttributeFont, nil];
self.navigationController.navigationBar.titleTextAttributes = size;
Run Code Online (Sandbox Code Playgroud)
谢谢.
适用于iOS 7及更高版本
尺寸:
NSDictionary *size = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"Arial" size:17.0],NSFontAttributeName, nil];
self.navigationController.navigationBar.titleTextAttributes = size;
Run Code Online (Sandbox Code Playgroud)
Lor*_*o B 14
您需要获取导航栏属性和使用@property(nonatomic, copy) NSDictionary *titleTextAttributes.
有关详细信息,请参阅UINavigationBar类参考和自定义UINavigationBar部分.
更好地理解您的问题:您拥有什么类型的控制器?
编辑
[self.navigationController.navigationBar setTitleTextAttributes:...];
Run Code Online (Sandbox Code Playgroud)
如果您访问navigationController推送控制器内.
[navigationController.navigationBar setTitleTextAttributes:...];
Run Code Online (Sandbox Code Playgroud)
如果navigationController是你的当前UINavigationController.例如,如果您有以下代码,则可以使用此选项:
UINavigationController* navigationController = ...;
[navigationController.navigationBar setTitleTextAttributes:...];
Run Code Online (Sandbox Code Playgroud)
Vei*_*hou 10
从iOS7开始,我总是这样做:
[[UINavigationBar appearance] setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:@"Helvetica-Bold" size:18.0],NSFontAttributeName,
nil]];
Run Code Online (Sandbox Code Playgroud)
UITextAttributeFontiOS7中的关键字一直很郁闷,你应该用它代替
NSFontAttributeName.
您可以使用
[self.navigationController.navigationBar setTitleTextAttributes:]设置某个navigationController的外观,同时[UINavigationBar appearance] setTitleTextAttributes:]直接适用于您的整个应用程序.(当然您需要将它放在属性位置.)
| 归档时间: |
|
| 查看次数: |
43683 次 |
| 最近记录: |