- 摇晃以撤销崩溃(Shake Undo)
Harry_Lee
崩溃堆栈信息:-[NSTextStorage(UIKitUndoExtensions)_undoRedoAttributedSubstringFromRange:]+156ExceptionType:EXC_CRASH(SIGABRT)ExceptionCodes:0x00000000at0x0000000000000000CrashedThread:0ApplicationSpecificInf
- (IOS)计算UILabel上某段文字的frame
rightmost
-(CGRect)boundingRectForCharacterRange:(NSRange)range{NSTextStorage*textStorage=[[NSTextStoragealloc]initWithAttributedString:[selfattributedText]];NSLayoutManager*layoutManager=[[NSLayoutManageralloc
- TextKit官方文档阅读笔记
丶丶夏天
iOS中文本控件的底层是TextKit,它能够精细地排版与布局文本TextKit是对CoreText的封装(如下图),所以有同样的性能image.pngimage.png在TextKit中,NSTextStorage存储了显示在TextViews中的string,文本的布局是由NSLayoutManager来处理的,文本的布局区域由于NSTextContainer定义NSTextContainer
- Swift_富文本绘制以及Url的点击
走停2015_iOS开发
541AAB10-735B-49DA-8CC9-99E8020662E8.pngTextKit的核心对象属性文本存储privatelazyvartextStorage=NSTextStorage()负责文本字形布局1.绘制背景2.绘制Glyphs字形3.获取点中字符的索引privatelazyvarlayoutManager=NSLayoutManager()设定文本绘制的范围privatelaz
- iOS: 利用TextKit实现UILabel的高亮、可交互
SoolyChristina
TextKit的相关知识可以看这一篇文章:点我要使UILabel用上TextKit,需要自定义UILabel先看看使用这个自定义Label的demodemo.gif1.自定义UILabel并创建TextKit三个核心对象///NSAttributedString子类设置文本统一使用fileprivatelazyvartextStorage=NSTextStorage()///布局管理器负责字形布局
- TextKit 实现文本分页
XPorter
TextKit的一些介绍在这里就不多说了,相关的信息可以看这里。这篇文章主要讲文本分页和遇到的问题。TextKit中主要涉及的就三个类,实现分页也用到这是三个。NSTextStorageNSLayoutManagerNSTextContainer主要的思路就是:NSTextStorage存储要分段的文本信息NSTextStorage设置NSLayoutManager在NSLayoutManager
- TextKit详解
iPhone
一、参与者详解1、string:读入需要绘制的文本内容。2、NSTextStorage:管理string的内容;这个很容易理解,NSTextStorage的父类是NSAttributedString继承属性文字所有的可设置属性,但是他们唯一不同的地方在与:NSTextStorage包含了一个方法,可以将所有对其内容进行的修改以通知的方式发送出来(这个方法在后面会将到);简单的理解就是:NSText
- iOS富文本(三)深入使用Text Kit
9栋108
在上一篇中介绍了TextKit的三种基本组件的关系并且简单的实现了怎么使用这三种基本组件,本片将深入的去使用这三种基本组件。NSTextStorageNSTextStorage是NSMutableAttributedString的子类,根据苹果官方文档描述是semiconcrete子类,因为NSTextStorage没有实现NSMutableAttributedString中的方法,所以说NSTe
- XZ_Swift之TextKit类实现把文字变成别的颜色且可交互
Understand_XZ
Swift
TextKit类结构介绍TextKit是iOS7推出的,面向对象的文本处理框架;借用一张图来介绍一下:图中真正的引用关系是实线的引用,反方向的虚线是弱引用具体解读1>NSTextStorage负责存储属性文本;2>NSLayoutManager用来布局的,负责绘制3个方法:绘制字形、绘制背景(比如有些要设置底色的)、布局字形(知道用户点到哪里,点到第几个字符了);3>NSTextContainer
- 初探NSAttributedString和NSMutableAttributedString的使用
Jymn_Chen
Foundation框架
由于iOS7新出的NSTextStorge是NSMutableAttributedString的子类,所以要用好NSTextStorage,首先要学好NSMutableAttributedString和NSAttributedString。按个人的理解,NSAttributedString是一个带有属性的字符串,通过该类可以灵活地操作和呈现多种样式的文字数据。因为是初步使用,所以基本上都是对照着文
- iOS 开发 富文本详解之TextKit详解
上进求知,认真思辨
图文混排Swift2.0~4.2iOS开发
textkit结构textkit使用步骤#Mark-1.自定义label--classCZLabel:UILabel---四个属性//1.属性文本存储privatelazyvartextStorage=NSTextStorage()//2.负责文本字形布局对象privatelazyvarlayoutManager=NSLayoutManager()//3.设定文本绘制的范围privatelazyv
- ios-TextKit框架基础
rv0p111
ios-Swift
iOS7之后引入TextKit框架,能够很方便的可以通过方便的接口去修改文字的样式和排版,解决图文混排的问题。而在ios7之前解决起来都会比较的困难。TextKit中有三个比较重要的对象1、NSTextStorage,是NSMutableAttributedString的子类,专门用来存储文本的和管理控件的属性文本,NSTextStorage引用着NSLayoutManager,当NSTextSt
- 用TextKit搞点事情
听风轻咛
iOS
先搞清楚族谱再搞清楚架构TextKit框架主要的几个View,主要包括UILabel,UITextView,UITextField;TextKit是NS一支的,所以不光只在iOS中使用;Textcontainer对应NSTextContainer,它定义了文本排版区域,很明显,文字是在这个区域中被管理的;Textstorage对应NSTextStorage,继承自NSMutableAttribut
- UIKit框架 - TextKit
userName
一.TextKit架构TextKit架构.png看图就已经知道底层就是CoreText,苹果可能感觉CoreText比较难用,在iOS7时发布了TextKit.二.TextKit中重要的一些对象image.jpg图中主要表现NSTextContainer,NSLayoutManager,NSTextStorage之间的关系。TextView是用来显示文本内容的控件,主要包括UILabel、UITe
- NSTextStorage
Laughingg
NSTextStorage定义了TextKit最基本的存储机制。这个类是NSMutableAttributedString的半具体的子类(我特么也没看明白是啥子意思),并添加一组NSLayoutManager的管理行为。一个文本存储对象当字符或属性发生改变的时候会通知布局管理者,让布局管理者在需要的时候重新显示文本。概览NSTextSorage对象能够在任何线程进行存取。但是你必须保证在同一时间只
- iOS 中的类簇
lixiaoshuai
类簇的定义类簇(ClassCluster)是定义相同的接口并提供相同功能的一组类的集合,仅公开接口的抽象类也可以称之为类簇的公共类,每个具体类的接口有公共类的接口抽象化,并隐藏在簇的内部。是基于抽象工厂模式在OC中应用。类簇的目的更加方便的初始化出一个类的实例对象。iOS中应用了类簇设计的类NSNumber,NSArray,NSDictionary,NSSet,NSTextStorage,(其他的
- NSTextStorage
随风流逝
//编辑类型,位移枚举typedefNS_OPTIONS(NSUInteger,NSTextStorageEditActions){NSTextStorageEditedAttributes=(1*layoutManagers;//为NSTextStorage添加一个NSLayoutManager;-(void)addLayoutManager:(NSLayoutManager*)aLayoutM
- 自定义UIPageControl、UITextView占位视图
且行且珍惜_iOS
一言不合先上效果图:效果预览.gif①、自定义的UIPageControl是继承于UIView,封装好的,可以设置图标大小,形状,图片,颜色,间隔,当然,需要的话,也可以自定义图标视图;详情请按快捷键Ctrl+B传送!②、创建有占位视图的UITextView,主要涉及NSTextStorage、NSLayoutManager、NSTextContainer、UIBezierPath几个类,主要代码
- 计算UILabel上某段文字的frame
lanmoyingsheng
可扩展为:在文本的最后面添加按钮,为按钮的位置就是根据下面返回的rect变化来的。@implementationUILabel(TextRect)-(CGRect)boundingRectForCharacterRange:(NSRange)range{NSTextStorage*textStorage=[[NSTextStoragealloc]initWithAttributedString:[
- UITextView.h
ShenYj
#pragma-mark@classUIFont,UIColor,UITextView,NSTextContainer,NSLayoutManager,NSTextStorage,NSTextAttachment;#pragma-mark-代理@protocolUITextViewDelegate@optional//是否能够开始编辑-(BOOL)textViewShouldBeginEditin
- NSTextStorage
我花开后百花殺
描述NSTextStorage是NSMutableAttributedString的半抽象子类,仅仅是对NSMutableAttributedString做了一些扩展,通过processEditing方法可以把所有对其内容进行的修改以通知和委托的形式发送出来。但是实际上它并没有实现属性字符串的存储工作,这是要交给它的具体子类来实现的,所以说NSTextStorage是半抽象的。子类化继承链(sub
- textView 与textField
yf_js
TextKit学习(三)NSTextStorage,NSLayoutManager,NSTextContainer和UITextView解决NSTextContainer分页时文本截断问题iOS简易文本控件开发(UIKeyInput协议学习)textView//实例一原始:_textView.contentSize:{375,659}_textView.text=nil;做以下设置。展示结果1._
- CS193P-2013 Lecture 5 TextView、生命周期、广播站机制
_Patrik_
UITextViewLikeUILable,butmulti-line可以滚动、编辑、选中等@property(nonatomic,readonly)NSTextStorage*textStorage是NSMutableAttributeString的一个子类,可以通过这个属性来设置字符串的属性属性font:直接set会导致原有的字体、颜色等属性全部丢失,需要用for循环取得原来的所有属性逐个添加
- NSLayoutManager
苒妈
首先介绍NSLayoutManager,属于UITextKit核心类。NSTextContainer。定义了文本可以排版的区域。默认情况下是矩形区域,如果是其他形状的区域,需要通过子类化NSTextContainer来创建。NSLayoutManager。该类负责对文字进行编辑排版处理,将存储在NSTextStorage中的数据转换为可以在视图控件中显示的文本内容,并把字符编码映射到对应的字形上,
- iOS 计算UILabel上某段文字的frame
位之先
-(CGRect)boundingRectForCharacterRange:(NSRange)range{NSTextStorage*textStorage=[[NSTextStoragealloc]initWithAttributedString:[selfattributedText]];NSLayoutManager*layoutManager=[[NSLayoutManageralloc
- iOS Text Part1:TextKit
破弓
0.TextKit包含类讲解TextKit_1.pngTextKit_2.png如图TextKit_1可以看到,我们一般能接触到的文字控件全是由TextKit封装而成的。TextKit内的三个类功能如下:NSTextStorage:保存文字控件要显示的NSAttributedStringNSLayoutManager:掌控文字控件对文字的具体绘制操作NSTextContainer:把控文字控件的显
- NSAttributedString和NSMutableAttributedString详细
LeoAu
有很多时候,我们需要对UILabel,UITextView等里面的文字进行特殊处理,有不少富文本的开源代码可以实现和参考,但这里我们有必要说一下NSAttributedString、NSMutableAttributedString和NSTextStorage这三个类,特别是NSTextStorage是在iOS7.0之后针对字符串处理的新特性,所以我们可以直接使用NSTextStorage而不需要
- TextKit功能和结构
星光社的戴铭
功能字距调整(Kerning)连写:图像附件:可以向TextView里添加图像了断字:设置hyphenationFactor就可以启用断字可定制性:更多的富文本属性:设置不同的下划线,双线,粗线,虚线,点线或者他们的组合。序列化:文本样式:全局预定义文本类型文本效果:iOS7仅仅只有一个效果,使用这个效果的文本看起来就像盖纸上面一样。结构NSTextStorage:中枢,管理所有文本和属性信息。它
- iOS Text
廖马儿
1.对text排版的framework,使用TextKit.显示单个字符也有frame,bounds,position,transform等属性的类,我们可以用CATextLayer.文本布局,我们用TextKit,它里面主要有三个类,NSTextStorage,NSLayoutManager,NSContainer.NSTextStorage:NSMutableAttributedString的
- iOS技术文档No.3 AppKit_NSLayoutManager
孤独雪域
iOS7.0之后的类,同样是对富文本的操作,但是再iOS9.0之后废弃了一些属性,所以建议有需求的人有时间的人好好搞一下这里还是贴上代码及原帖地址和demo链接图1.png这是使用UITextView时用到的iOS7新增加的类:NSTextContainer、NSLayoutManager、NSTextStorage及其相互关系:关系.png关系1.png这三个新出的类还没有在官方出独立的clas
- web报表工具FineReport常见的数据集报错错误代码和解释
老A不折腾
web报表finereport代码可视化工具
在使用finereport制作报表,若预览发生错误,很多朋友便手忙脚乱不知所措了,其实没什么,只要看懂报错代码和含义,可以很快的排除错误,这里我就分享一下finereport的数据集报错错误代码和解释,如果有说的不准确的地方,也请各位小伙伴纠正一下。
NS-war-remote=错误代码\:1117 压缩部署不支持远程设计
NS_LayerReport_MultiDs=错误代码
- Java的WeakReference与WeakHashMap
bylijinnan
java弱引用
首先看看 WeakReference
wiki 上 Weak reference 的一个例子:
public class ReferenceTest {
public static void main(String[] args) throws InterruptedException {
WeakReference r = new Wea
- Linux——(hostname)主机名与ip的映射
eksliang
linuxhostname
一、 什么是主机名
无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。域名类型 linuxsir.org 这样的;
主机名是用于什么的呢?
答:在一个局域网中,每台机器都有一个主
- oracle 常用技巧
18289753290
oracle常用技巧 ①复制表结构和数据 create table temp_clientloginUser as select distinct userid from tbusrtloginlog ②仅复制数据 如果表结构一样 insert into mytable select * &nb
- 使用c3p0数据库连接池时出现com.mchange.v2.resourcepool.TimeoutException
酷的飞上天空
exception
有一个线上环境使用的是c3p0数据库,为外部提供接口服务。最近访问压力增大后台tomcat的日志里面频繁出现
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResou
- IT系统分析师如何学习大数据
蓝儿唯美
大数据
我是一名从事大数据项目的IT系统分析师。在深入这个项目前需要了解些什么呢?学习大数据的最佳方法就是先从了解信息系统是如何工作着手,尤其是数据库和基础设施。同样在开始前还需要了解大数据工具,如Cloudera、Hadoop、Spark、Hive、Pig、Flume、Sqoop与Mesos。系 统分析师需要明白如何组织、管理和保护数据。在市面上有几十款数据管理产品可以用于管理数据。你的大数据数据库可能
- spring学习——简介
a-john
spring
Spring是一个开源框架,是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只能由EJB完成的事情。然而Spring的用途不仅限于服务器端的开发,从简单性,可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。其主要特征是依赖注入、AOP、持久化、事务、SpringMVC以及Acegi Security
为了降低Java开发的复杂性,
- 自定义颜色的xml文件
aijuans
xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="white">#FFFFFF</color> <color name="black">#000000</color> &
- 运营到底是做什么的?
aoyouzi
运营到底是做什么的?
文章来源:夏叔叔(微信号:woshixiashushu),欢迎大家关注!很久没有动笔写点东西,近些日子,由于爱狗团产品上线,不断面试,经常会被问道一个问题。问:爱狗团的运营主要做什么?答:带着用户一起嗨。为什么是带着用户玩起来呢?究竟什么是运营?运营到底是做什么的?那么,我们先来回答一个更简单的问题——互联网公司对运营考核什么?以爱狗团为例,绝大部分的移动互联网公司,对运营部门的考核分为三块——用
- js面向对象类和对象
百合不是茶
js面向对象函数创建类和对象
接触js已经有几个月了,但是对js的面向对象的一些概念根本就是模糊的,js是一种面向对象的语言 但又不像java一样有class,js不是严格的面向对象语言 ,js在java web开发的地位和java不相上下 ,其中web的数据的反馈现在主流的使用json,json的语法和js的类和属性的创建相似
下面介绍一些js的类和对象的创建的技术
一:类和对
- web.xml之资源管理对象配置 resource-env-ref
bijian1013
javaweb.xmlservlet
resource-env-ref元素来指定对管理对象的servlet引用的声明,该对象与servlet环境中的资源相关联
<resource-env-ref>
<resource-env-ref-name>资源名</resource-env-ref-name>
<resource-env-ref-type>查找资源时返回的资源类
- Create a composite component with a custom namespace
sunjing
https://weblogs.java.net/blog/mriem/archive/2013/11/22/jsf-tip-45-create-composite-component-custom-namespace
When you developed a composite component the namespace you would be seeing would
- 【MongoDB学习笔记十二】Mongo副本集服务器角色之Arbiter
bit1129
mongodb
一、复本集为什么要加入Arbiter这个角色 回答这个问题,要从复本集的存活条件和Aribter服务器的特性两方面来说。 什么是Artiber? An arbiter does
not have a copy of data set and
cannot become a primary. Replica sets may have arbiters to add a
- Javascript开发笔记
白糖_
JavaScript
获取iframe内的元素
通常我们使用window.frames["frameId"].document.getElementById("divId").innerHTML这样的形式来获取iframe内的元素,这种写法在IE、safari、chrome下都是通过的,唯独在fireforx下不通过。其实jquery的contents方法提供了对if
- Web浏览器Chrome打开一段时间后,运行alert无效
bozch
Webchormealert无效
今天在开发的时候,突然间发现alert在chrome浏览器就没法弹出了,很是怪异。
试了试其他浏览器,发现都是没有问题的。
开始想以为是chorme浏览器有啥机制导致的,就开始尝试各种代码让alert出来。尝试结果是仍然没有显示出来。
这样开发的结果,如果客户在使用的时候没有提示,那会带来致命的体验。哎,没啥办法了 就关闭浏览器重启。
结果就好了,这也太怪异了。难道是cho
- 编程之美-高效地安排会议 图着色问题 贪心算法
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class GraphColoringProblem {
/**编程之美 高效地安排会议 图着色问题 贪心算法
* 假设要用很多个教室对一组
- 机器学习相关概念和开发工具
chenbowen00
算法matlab机器学习
基本概念:
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
开发工具
M
- [宇宙经济学]关于在太空建立永久定居点的可能性
comsci
经济
大家都知道,地球上的房地产都比较昂贵,而且土地证经常会因为新的政府的意志而变幻文本格式........
所以,在地球议会尚不具有在太空行使法律和权力的力量之前,我们外太阳系统的友好联盟可以考虑在地月系的某些引力平衡点上面,修建规模较大的定居点
- oracle 11g database control 证书错误
daizj
oracle证书错误oracle 11G 安装
oracle 11g database control 证书错误
win7 安装完oracle11后打开 Database control 后,会打开em管理页面,提示证书错误,点“继续浏览此网站”,还是会继续停留在证书错误页面
解决办法:
是 KB2661254 这个更新补丁引起的,它限制了 RSA 密钥位长度少于 1024 位的证书的使用。具体可以看微软官方公告:
- Java I/O之用FilenameFilter实现根据文件扩展名删除文件
游其是你
FilenameFilter
在Java中,你可以通过实现FilenameFilter类并重写accept(File dir, String name) 方法实现文件过滤功能。
在这个例子中,我们向你展示在“c:\\folder”路径下列出所有“.txt”格式的文件并删除。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
- C语言数组的简单以及一维数组的简单排序算法示例,二维数组简单示例
dcj3sjt126com
carray
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
//a 是数组的名字 5是表示数组元素的个数,并且这五个元素分别用a[0], a[1]...a[4]
int i;
for (i=0; i<5; ++i)
printf("%d\n",
- PRIMARY, INDEX, UNIQUE 这3种是一类 PRIMARY 主键。 就是 唯一 且 不能为空。 INDEX 索引,普通的 UNIQUE 唯一索引
dcj3sjt126com
primary
PRIMARY, INDEX, UNIQUE 这3种是一类PRIMARY 主键。 就是 唯一 且 不能为空。INDEX 索引,普通的UNIQUE 唯一索引。 不允许有重复。FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。举个例子来说,比如你在为某商场做一个会员卡的系统。这个系统有一个会员表有下列字段:会员编号 INT会员姓名
- java集合辅助类 Collections、Arrays
shuizhaosi888
CollectionsArraysHashCode
Arrays、Collections
1 )数组集合之间转换
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
a)Arrays.asL
- Spring Security(10)——退出登录logout
234390216
logoutSpring Security退出登录logout-urlLogoutFilter
要实现退出登录的功能我们需要在http元素下定义logout元素,这样Spring Security将自动为我们添加用于处理退出登录的过滤器LogoutFilter到FilterChain。当我们指定了http元素的auto-config属性为true时logout定义是会自动配置的,此时我们默认退出登录的URL为“/j_spring_secu
- 透过源码学前端 之 Backbone 三 Model
逐行分析JS源代码
backbone源码分析js学习
Backbone 分析第三部分 Model
概述: Model 提供了数据存储,将数据以JSON的形式保存在 Model的 attributes里,
但重点功能在于其提供了一套功能强大,使用简单的存、取、删、改数据方法,并在不同的操作里加了相应的监听事件,
如每次修改添加里都会触发 change,这在据模型变动来修改视图时很常用,并且与collection建立了关联。
- SpringMVC源码总结(七)mvc:annotation-driven中的HttpMessageConverter
乒乓狂魔
springMVC
这一篇文章主要介绍下HttpMessageConverter整个注册过程包含自定义的HttpMessageConverter,然后对一些HttpMessageConverter进行具体介绍。
HttpMessageConverter接口介绍:
public interface HttpMessageConverter<T> {
/**
* Indicate
- 分布式基础知识和算法理论
bluky999
算法zookeeper分布式一致性哈希paxos
分布式基础知识和算法理论
BY
[email protected]
本文永久链接:http://nodex.iteye.com/blog/2103218
在大数据的背景下,不管是做存储,做搜索,做数据分析,或者做产品或服务本身,面向互联网和移动互联网用户,已经不可避免地要面对分布式环境。笔者在此收录一些分布式相关的基础知识和算法理论介绍,在完善自我知识体系的同
- Android Studio的.gitignore以及gitignore无效的解决
bell0901
androidgitignore
github上.gitignore模板合集,里面有各种.gitignore : https://github.com/github/gitignore
自己用的Android Studio下项目的.gitignore文件,对github上的android.gitignore添加了
# OSX files //mac os下 .DS_Store
- 成为高级程序员的10个步骤
tomcat_oracle
编程
What
软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。
Why
得到更多的报酬!因为你的薪水会随着你水平的提高而增加
提升你的职业生涯。成为了高级软件工程师之后,就可以朝着架构师、团队负责人、CTO 等职位前进
历经更大的挑战。随着你的成长,各种影响力也会提高。
- mongdb在linux下的安装
xtuhcy
mongodblinux
一、查询linux版本号:
lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noa