ios实现navigationItem的titleLabel双行显示代码教程
程序员文章站
2022-05-27 09:00:02
要实现这个功能其实有很多方法,我这里介绍两种方法来实现,一种是通过我们创建一个view,然后往这个view里面加入两个label,然后我们再设置自动布局的约束
//设置titleview...
要实现这个功能其实有很多方法,我这里介绍两种方法来实现,一种是通过我们创建一个view,然后往这个view里面加入两个label,然后我们再设置自动布局的约束
//设置titleview let titleview = uiview(frame: cgrect(x: 0, y: 0, width: 200, height: 32)) //导航栏的titleview为我们自定义的titleview navigationitem.titleview = titleview ///创建titlelabel,就是发微博的label let titlelabel:uilabel = uilabel(title: "发动态", color: uicolor.black, fontsize: 15) ///创建namelabel let namelabel:uilabel = uilabel(title: "哈哈哈", color: uicolor.lightgray, fontsize: 13) //添加子控件 titleview.addsubview(titlelabel) titleview.addsubview(namelabel) //titlelabel设置自动布局 titlelabel.mas_makeconstraints { (make) in //设置中心点x的自动布局 make?.centerx.mas_equalto()(titleview.mas_centerx) //设置顶部的自动布局 make?.top.mas_equalto()(titleview.mas_top) } //设置namelabel的自动布局 namelabel.mas_makeconstraints { (make) in //设置中心点x的布局 make?.centerx.mas_equalto()(titleview.mas_centerx) //设置顶部的自动布局 make?.top.mas_equalto()(titlelabel.mas_bottom) //设置底部的自动布局 make?.bottom.mas_equalto()(titleview.mas_bottom) } }另外一种就是通过label来显示,然后通过设置label的attributedtext属性来进行设置,换行我们这里可以通过\n,换行符来做
//创建一个label uilabel * titleview=[[uilabel alloc]init]; //显示宽高 titleview.w=180; titleview.h=44; //设置文字居中显示 titleview.textalignment=nstextalignmentcenter; //设置titlelabel自动换行 titleview.numberoflines=0; //设置发微博的prefix nsstring * prefix=@"发动态"; nsstring * name = @"哈哈哈" //获取标题的字符串 nsstring * str=[nsstring stringwithformat:@"%@\n%@",prefix,name]; //创建一个带有属性的字符串比如说颜色,字体等文字的属性 nsmutableattributedstring * attrstr=[[nsmutableattributedstring alloc]initwithstring:str]; //设置name的字体大小 [attrstr addattribute:nsfontattributename value:[uifont systemfontofsize:12] range:[str rangeofstring:name]]; //设置发动态的字体大小 [attrstr addattribute:nsfontattributename value:[uifont systemfontofsize:13] range:[str rangeofstring:prefix]]; //设置name的颜色 [attrstr addattribute:nsforegroundcolorattributename value:[uicolor graycolor] range:[str rangeofstring:name]]; //label中也可以携带图片 // nstextattachment * attachment=[[nstextattachment alloc]init]; // attachment.image=[uiimage imagenamed:@""]; // nsattributedstring * str2=[nsattributedstring attributedstringwithattachment:attachment]; // [attrstr appendattributedstring:str2]; //设置有属性的text titleview.attributedtext=attrstr; //设置导航栏的titleview self.navigationitem.titleview=titleview;
上一篇: 使用pip发布Python程序的方法步骤
下一篇: ps怎么设计一个斑驳的首页推荐图章?
推荐阅读
-
ios实现navigationItem的titleLabel双行显示代码教程
-
PHP实现提取一个图像文件并在浏览器上显示的代码_PHP教程
-
php实现图形显示Ip地址的代码_PHP教程
-
php站内搜索并高亮显示关键字的实现代码_PHP教程
-
ios实现navigationItem的titleLabel双行显示代码教程
-
推荐Discuz!5的PHP代码高亮显示与实现可运行代码_PHP教程
-
php格式化时间戳显示友好的时间实现思路及代码,php思路_PHP教程
-
PHP实现提取一个图像文件并在浏览器上显示的代码_PHP教程
-
php实现图形显示Ip地址的代码及注释_PHP教程
-
HTML5上传文件显示进度的实现代码_html5教程技巧