首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Swift 3.0 探索之 UILabel

(width: 2.0, height: 2.0) //设置阴影偏移量 设置 lineBreakMode(如果字体显示不开,采取的显示方式) myLabel.lineBreakMode...myLabel.lineBreakMode = NSLineBreakMode.byClipping //截去多余部分也不显示省略号 设置 adjustsFontSizeToFitWidth 需要注意的是...当设置 adjustsFontSizeToFitWidth 属性为true的时候 设置lineBreakMode属性将失效 //当设置下面的 adjustsFontSizeToFitWidth...属性为true的时候 上面设置的lineBreakMode属性将失效 myLabel.adjustsFontSizeToFitWidth = true //当文字超出标签宽度时,自动调整文字大小...属性的时候,设置的text将失效,其textColor、font等属性将保留没有被改变的(OC Swift通用属性)**** //富文本设置 let attributeString

81530
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOS文本布局探讨之一——文本布局框架TextKit浅析

    二、TextKit框架的结构         界面在进行文本的渲染时,有下面几个必要条件: 1.要渲染展示的内容。 2.将内容渲染在某个视图上。 3.内容渲染在视图上的尺寸位置和形状。...四、了解NSTextContainer类         NSTextContainer可以简单理解为创建一个文本区块,文本内容将在这个区块中进行渲染,其中常用属性与方法如下: //初始化方法 设置区块的尺寸...@property(NS_NONATOMIC_IOSONLY) NSLineBreakMode lineBreakMode; //设置每行文本左右空出的间距 @property(NS_NONATOMIC_IOSONLY...)textContainerChangedGeometry:(NSTextContainer *)container; 与布局管理相关的属性与方法如下: //是否显示隐形的符号 /* 默认为NO,如果设置为...) BOOL usesFontLeading; //这个属性设置是否允许对相邻位置的内容进行布局 默认为YES,设置为NO后将可以提供大文本布局的效率 @property(NS_NONATOMIC_IOSONLY

    1.9K10

    1.注册或登录页面设计:UILabel,UIButton,UITextField

    说明: 这里为了展现UITextField的文本框关联键盘的设置,这里把“密码”和“确定密码”的关联键盘都设置为数字键盘,实际应用中密码一般都允许为数字或字母。 实现了键盘收回操作。...//设置显示文字 label1.text = @"用户名"; //设置字体:粗体,正常的是 SystemFontOfSize label1.font = [UIFont boldSystemFontOfSize...= YES; //设置label中的文字是否可变,默认值是YES label3.enabled = NO; //设置文字过长时的显示格式 label3.lineBreakMode = UILineBreakModeMiddleTruncation...alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //当输入框没有内容时,水印提示 ,提示内容为“用户名” //显示灰色字体,作为提示信息 text.placeholder...这里是将method的方法指定给新建的这个confirmButton [self.view addSubview:confirmButton]; 若要设置UIButton的背景图片时:

    2.4K50

    小说阅读器的设计和实现

    总共会有四个层级: 交互层:处理左右滑动的事件以及正常的用户操作响应;(VC处理,view在渲染层) 逻辑层:网络数据请求、数据格式转换和布局排版的计算; 数据层:对数据进行封装,主要包括业务数据、用户设置数据...阅读器的排版基于CoreText,通过章节文本数据SSChapterData和用户设置SSConfigData,可以生成带格式的富文本NSAttributeString;通过CoreText将富文本转化成多个...点击的时候会同步更新当前数据源为下一页,所以即使点击很快,也不会出现数据源异常的情况。 问题在于滑动切换时,何时把数据源更新为下一页?...由于UIPageViewController的局限,较好的一种方案是在开始滑动时就把数据源更新,最后如果用户取消翻页,则将数据源更新为原来的页面。...BackVC,否则出现数据展示异常; 通过setViewControllers方法手动切换界面时,如果设置animated为YES,则必须传入两个vc否则会出现Crash。

    4.1K20

    Swift:静态工厂方法

    swift: 静态工厂方法 视图 Views 视图是我们在编写UI代码时必须设置的最常见对象之一。...= true minimumScaleFactor = 0.75 } } 上面的方法并没有什么真正的问题,但是它确实创建了更多类型来跟踪,而且最终我们将拥有多个子类,因为我们经常为相同视图类型配置其他变体...因此,问题是子类是否真的适合此处的工作? 相反,让我们尝试使用静态工厂方法来实现相同的目的。...此外,由于扩展名可以限制为单个文件(通过添加private关键字),因此我们可以轻松地为需要创建特定视图的应用程序部分设置扩展名,只有一个功能即可: //我们只会在单个视图控制器中使用它,因此我们将范围设为私有...特别是如果与"Swift:将子视图控制器用作插件" 中的便捷API的稍加修改版本结合使用,我们现在可以在执行异步操作时轻松添加预先配置的加载视图控制器: class ProductListViewController

    2.4K10

    产品设计之动态字体大小

    iOS中如果想做到跟随系统默认的字体大小改变而改变,怎么实现呢,步骤如下: 1、设置字体的新式为UIFontTextStyle某个选项; 2、注册通知,监听字号改号改变时修改字体然后重新更新一下布局;...APP字体大小 [3]一文让你彻底了解iOS字体相关知识 iOS中如果想实现字体大小随UILabel的宽度进行自适应,可使用adjustsFontSizeToFitWidth,更多详情可参考这篇文章:详解...UILabel的adjustsFontSizeToFitWidth值 Android默认是跟随系统字体大小改变而改变的,那如果想避免受系统字体大小的影响,如何处理(4.0开始,系统提供修改字体大小功能)...方法一、将TextView的字体单位由sp改为dp; 方法二、在自定义的Activity中重写getResources方法; @Override public Resources getResources...写这篇文章也是因为发现了默认RN是跟随系统自带的字体大小变化而变化的,当时还比较惊讶,后来查文档发现默认就支持了,如果想禁用直接设置属性allowFontScaling为false(默认为true) https

    1.6K30

    配合LLDB调试器进行iOS代码调试 原

    Xcode默认使用LLDB作为代码调试器,LLDB功能丰富且强大,恰当的使用它,可以帮助开发者事半功倍的完成代码调试的工作。...expression命令也并非简单的打印命令,实际上它是一个执行代码命令,执行后将返回值进行打印,这个命令有一个十分强大的特点,它可以真实改变程序运行中变量的值。...首先Xcode左侧导航区为我们列出的线程堆栈块并不是当前线程中的所有堆栈块,使用如下命令可以打印出当前线程的所有堆栈块: (lldb) thread backtrace * thread #1: tid...                    popq   %rbp     0x10aab7980 : c3                    retq       使用disassemble -c 指令可以设置输出汇编代码的行数...,setter = setAdjustsFontSizeToFitWidth:,assign,readwrite,nonatomic ) BOOL adjustsFontSizeToFitWidth;

    1.9K31

    C#使用Xamarin开发可移植移动应用(3.Xamarin.Views控件)附源码

    嗯..解释一下 为什么暂时没用共享类库.. 有些小BUG 可能是为了迎合其他类型的项目..所以在共享类库里创建的Page并不能很好的结合 - - 类似如下: ?   正常的应该是这样 ?...BorderRadius 设置边框的圆角 BorderWidth 边框宽度 Command 命令,获取或设置激活该按钮时要调用的命令。这是一个可绑定的属性。...LineBreakMode 设置行的排列方式(枚举) 示例代码:  10.Picker 这个,大家也应该很熟悉,就是HTML的Select, 下拉列表...常用属性: 属性 值 Progress 设置进度条的加载进度..  1为满值 .5为50% 示例代码:  12.SearchBar 一个搜索栏...常用属性: 属性 值 CancelButtonColor 搜索栏颜色 Placeholder 搜索栏为空时的默认文本 SearchCommand 搜索命令 Text 搜索栏的文本值 SearchButtonPressed

    1.8K90

    干货 | 携程酒店iOS动态View的探索

    作者简介 姜睿东,2009年加入携程,从事无线研发,现在大住宿事业群负责酒店无线研发工作。 一直以来,Native App因为审核的原因,新版本不能很及时地上线。...尤其是iOS,碰到点审核问题,有时候一连几天都不能上架,严重影响业务和产品的体验。 大家一直都在寻求能够动态更新业务的方法,关于这方面的框架也是层出不穷。...以携程酒店主流程页面之一的订单详情页为例,在没有额外增加人手的情况下,前后花了几个月时间,才陆陆续续完成了90%的功能转CRN,过程尤为艰辛。...对此,我们考虑能不能采用一种让Native和CRN共存的方式,这样既可以保留Native的业务逻辑,又可以在UI层面做到灵活应变。...为什么会这么说呢,首先来看一下JavaScriptCore中所包含的两个关键类,JSContext和JSValue: JSContext JSContext提供了一个在APP中执行JavaScript代码的环境

    77620

    MJRefresh 源码解析

    因为在手指还贴在屏幕的时候是不能进行刷新的。所以即使在下拉的距离超过了临界距离(状态栏 + 导航栏 + header高度),如果手指没有离开屏幕,那么也不能马上进行刷新,而是将状态切换为:可以刷新。...) { //============== 设置状态为默认状态 =============// //如果当前不是正在刷新就返回,因为这个方法主要针对从正在刷新状态(oldstate...设置为默认状态 if (oldState == MJRefreshStateRefreshing) { //1.1 从正在刷新状态中切换过来...设置为可以刷新状态 [self.loadingView stopAnimating]; self.arrowView.hidden = NO; [UIView...设置为正在刷新状态 self.loadingView.alpha = 1.0; // 防止refreshing -> idle的动画完毕动作没有被执行 //菊花旋转

    1.2K20

    文字排版入门—— 排版基础、CoreText和图文混排

    当我们需要排版时,可以对字符串设置各种格式,生成NSAttributeString; 然后用NSAttributeString去创建CTFramesetter类,CTFramesetter会处理排版信息...思考题:为什么图片底部会有一个浅绿色的区域?...因此可以知道,当我们直接访问s[0]时,并不能读取到"测"字。 换一段oc的代码: 这里的len会输出多少?当我们访问str的第一个字符时会返回什么?...Fill灰色,Stroke红色,StrokeWidth=0 图文混排中底部绿色区域 图文混排其实是排版时插入一个特殊的空白字符,并设定字符的宽高为特定size,预留对应size的空白,再算出对应位置的坐标...ascent为图片的高,width为图片的宽,descent设置的为0。

    7.4K32
    领券