背景 在下面的R.id.rv_msg_remind 标红,然后鼠标附上去,显示attribute value must be contant.如下: @BindView(R.id.rv_msg_remind) 然后接触android studio 有一段时间了,给出的信息并一定准确.给出的答案是属性值必须是不变的. 但是android R.id.xxx本来就是const的,这显然矛盾了,但是事情可以肯定的是是没有拿到R.id.xxx的值报错了. 这时候一个前提,我先写好了子项目,然后合并项目出的…
因为多机环境fanout广播模式,每台机器需要使用自己的队列接受消息 所以尝试使用以下的方案 private static final String QUEUE_NAME="foo."+IPUtils.getLocalhostIp(); @RabbitListener(queues = QUEUE_NAME) public void process(String command){ ... } but...果断报错:Attribute value must be constant 解决…
就是因为你的android工程是lib类型的 如: apply plugin: 'com.android.library' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minif…
NSLayoutConstraint参数说明: /** * 创建约束 NSLayoutConstraint 参数 说明: * item 自己 * attribute * relatedBy 大于等于 小于等于 等于 ... * toItem 另外一个控件 * attribute 另一个控件的属性 * multiplier 乘以多少 * constant : 加上多少 * NSLayoutConstraint : 某个控件的属性值 等于 另外一个控件的属性值 乘以多少 加上多少 * 添加约束 ad…
如果需要开发第三方键盘 首先得了解一下苹果官方文档  https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/Keyboard.html 然后建议看一下 APPExtension http://www.cocoachina.com/ios/20140918/9677.html 键盘应用属于你的hostAPP 所以如果你要了解appGroups来做到两个应用间信息传输 使用方法…
// 系统的约束代码 @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UIView *superView = self.view; UIView *viewDemo = [[UIView alloc] init]; viewDemo.translatesAutoresizingMaskIntoConstraints = NO; viewDemo.backgroundColor = [UIColor…
1. autoResizing autoresizing是苹果早期的ui布局适配的解决办法,iOS6之前完全可以胜任了,因为苹果手机只有3.5寸的屏幕,在加上手机app很少支持横屏,所以iOS开发者基本不用怎么适配布局,所有的ui控件只要相对父控件布局就可以了,没错autoResizing就是一个相对于父控件的布局解决方法:注意:它只能相对父控件布局:***在xcode中可以通过可视化的界面调整也可以通过代码去控制 在用autoResizing的时候需要关闭autoLayout和sizeclas…
Masonry 仍然在维持. 如果使用 Swift 开发, 建议使用 SnapKit. Masonry 以一种简便可读的代码实现子控件自动布局 ,甚至可以实现一些动画,是一中轻量级的框架. Masonry 支持 iOS 和 Mac OS X.可以使用Pod安装或则下载ZIP直接导入使用. 如果不想使用前缀'mas_',可以导入宏,具体如下: #define MAS_SHORTHAND #define MAS_SHORTHAND_GLOBALS #import "Masonry.h" 下…
对于 Objective-C 的语法,喜欢的人会觉得它是如此的优雅,代码可读性强,接近自然语言,开发者在调用大多数方法时不需要去查看注释或文档,通常只凭借方法名就可以大致知道这个方法的作用,可以理解为 代码即注释:而对于不喜欢的人来说,会觉得这种语法规则太啰嗦了! 直到第三方自动布局框架 Masonry 的出现,如下面代码,大家才发现,原来 Objective-C 还可以这么玩!             Objective-C   [view1 mas_makeConstraints:^(MAS…
为了让我们的应用在不同尺寸的屏幕下都能 “正常”的表示,我们尽量不要把数据写死.大多数可视元素都是一个矩形区域,当然这个矩形区域有坐标的,我们有了这个区域坐标就能确定可视元素的现实位置了.但是iphone5和以前的屏幕不一样了,在以前的设备中,我们可以添加一个 xx.@2x.png来适应retina屏幕,但是iphoen5咋办呢?ios6引入了 Auto Layout的东东,这个要和UIViewAutoresizing区分下. 1.看下面代码: -(void)viewDidLoad { [sup…
如果你曾经在你的App中使用UIWebView加载网页内容的话,你应该体会到了它的诸多不尽人意之处.UIWebView是基于移动版的Safari的,所以它的性能表现十分有限.特别是在对几乎每个Web应用都会使用的JavaScript,表现的尤为糟糕. 但是,所有的这一切都在iOS 8引入了一个新的框架——WebKit,之后变得好起来了.在WebKit框架中,有WKWebView可以替换UIKit的UIWebView和AppKit的WebView,而且提供了在两个平台可以一致使用的接口. WebK…
关于iOS布局自动iPhone6之后就是AutoLayOut,AutoLayOut固然非常好用,不过有时候我们需要在页面手动进行页面布局,VFL算是一种选择,如果对VFL不是很熟悉可以参考iOS开发-VFL(Visual format language)和Autolayout.VFL不复杂,理解起来很容易,实际开发中用的特别熟还好,要是第一次看估计要花点功夫才能搞定.Masonry算是VFL的简化版,用的人比较多,之前项目中用过一次,对手动写页面的开发来说算是福利. 基础知识 首先我们看一个常见…
1.使用autoresizing 2.使用autolayout 3.VFL语言(Visual Format Language:可视化格式语言) 使用autoresizing 点击xib文件,去掉使用autolayout(autolayout和autoresizing只能使用一个)    如图中所示    1.代表视图距离父容器顶部距离固定    2.代表视图距离父容器左边距离固定    3.代表视图距离父容器底部距离固定    4.代表视图距离父容器右边距离固定    5.中间水平线表示视图随着…
转:从此爱上iOS Autolayout 这篇不是autolayout教程,只是autolayout动员文章和经验之谈,在本文第五节友情链接和推荐中,我将附上足够大家熟练使用autolayout的教程.这篇文章两个月前就想写下来,但因为一直工作较多,没有时间来完成.今天终于狠下心,丢下代码不写,来完成他吧! 一.别和我提Autolayout,我想死!! 从iOS6/xcode4开始,苹果开始提供了autolayout——一种对不同屏幕尺寸有更好兼容的自动布局机制,但我相信大多数人在刚接触auto…
每个用过 UIWebView 的iOS开发者对其诸多的限制和有限的功能也深有感触.悻然,自iOS8推出 WebKit 框架后将改变这一窘境.在本文我将会深入WebKit来体验一下它给我们带来的好处,同时也看看在iOS9中新加入的 SFSafariViewController 有些什么新的惊喜. 通用的浏览行为 所谓的通用浏览行为主要可以归纳为以下的几种: 网页载入进度 前进 后退 刷新 如果每个用到 WebView 的 app都要做一个专用的Controller也挺麻烦的,我以前就直接采用其它第…
最近重新拿起了iOS的开发,使用OC和Swift混编,碰到了一些比较棘手的问题,在这里记录下来,方便自己以后或他人不再入坑.这篇文章的内容包含: UITableViewCell的真实结构在iOS的环境下使用正则表达式如何优雅的隐藏tabbar如何修改navigationbar的颜色运行时修改使用autolayout的viewnavigation controller子view偏移问题CoreData的使用总结解决git的Xcode冲突1.UITableViewCell的真实结构 目标是想把UIT…
Auto Layout是什么 Auto Layout是一个基于constraint(约束)的布局系统,它根据UI元素之间约束关系来调整UI元素的位置和大小. Auto Layout解决什么问题 更容易适配不同分辨率设备的屏幕(iPhone 6 Plus, iPhone 6, iPhone 5s/5, iPhone 4s/4) 当设备旋转时不需要做额外处理 使用constraint来描述布局逻辑,更利于理解和清晰 如何使用Auto Layout Auto Layout中约束的类对应是NSLayou…
1 使用Autoresizing的方式进行界面布局 1.1 问题 Autoresizing是IOS旧版的自动布局技术,现在仍然被很多企业使用.本案例将学习如何使用Autoresizing完成界面的布局,如图-1.图-2所示: 图-1 图-2 1.2 方案 首先创建一个SingleViewApplication项目,会自动帮我们创建好一个TRViewController类,并且自动带有Storyboard文件,默认情况下Storyboard里面有一个已经创建好的场景,已和TRViewControl…
 2015-04-03 Created By BaoXinjian…
原文:Advanced Auto Layout Toolbox 这篇文章并没有具体介绍自动布局的一些基本概念,主要讲解了一些高级的使用方法和调试技巧,文中有的句子比较长,意思也有点难懂,所以需要静下心仔细揣摩.如果你刚接触自动布局,推荐你先看这几篇文章:1.官方的Guide:About Cocoa Auto Layout  2.来自raywenderlich的tutorial:Beginning Auto Layout in iOS 6: Part 2/2    3.来自@onevcat 的bl…
"不得不说,单单是文章的标题,可能不足以说明本文的内容.因此,在继续讲述约束动画之前,我先放上本文要实现的动画效果." 编辑:Bison投稿:Sindri的小巢 约束动画并不是非常复杂的技巧,在你熟练使用约束之后,你总能创建些独具匠心的动画.在上一篇autolayout动画初体验中,我们根据监听列表视图的滚动偏移来不断改变约束值,从而制作出动画的效果.但上个动画的实现更像是我们制作了一帧帧连续的界面从而达成动画的效果 —— 这未免太过繁杂.而在本文我们将抛弃这种繁杂的方式,通过调用UI…
本文转载自:http://tech.techweb.com.cn/thread-635784-1-1.html 本文讲述了UITableView.UICollectionView实现 self-sizing cell 布局的知识,以及如何用 InvalidationContext 优化 UICollectionView 布局的更新. 背景iOS 越来越人性化了,用户可以在设置-通用-辅助功能中动态调整字体大小了.你会发现所有 iOS 自带的APP的字体大小都变了,可惜我们开发的第三方APP依然是…
#import <UIKit/UIKit.h> @interface ZSDProgressView : UIView { UIView *progressView;//进度view } //进度值 @property(nonatomic,assign)float progress; @end #define UIColorFromRGB(rgbValue) [UIColor \ colorWithRed:(())/255.0 \ green:(())/255.0 \ blue:((float…
AutoLayout是从IOS 6开始苹果引入来取代autoresizing的新的布局技术,该技术有三种设置方式,等下我来为大家一一叙述一下. 在说三种设置方式前,我们先简单的说一下autolayout能够设置哪些行为. 1.视图的大小(即视图的绝对大小). 2.视图的位置(视图相对于父视图或者兄弟视图的位置). 3.视图的对齐方式(相对于父视图或者相对于兄弟视图). 可以看到autolayout相比autoresizing技术来说要灵活的多,该技术有很多布局的约束设置.这次主要讲的用代码来设置…
引言 对于 Objective-C 的语法,喜欢的人会觉得它是如此的优雅,代码可读性强,接近自然语言,开发者在调用大多数方法时不需要去查看注释或文档,通常只凭借方法名就可以大致知道这个方法的作用,可以理解为 代码即注释:而对于不喜欢的人来说,会觉得这种语法规则太啰嗦了! 直到第三方自动布局框架 Masonry 的出现,如下面代码,大家才发现,原来 Objective-C 还可以这么玩! [view1 mas_makeConstraints:^(MASConstraintMaker *make)…
autoResizing autoLayout和sizeClass,VFL,Masonry详解 1. autoResizing autoresizing是苹果早期的ui布局适配的解决办法,iOS6之前完全可以胜任了,因为苹果手机只有3.5寸的屏幕,在加上手机app很 少支持横屏,所以iOS开发者基本不用怎么适配布局,所有的ui控件只要相对父控件布局就可以了,没错autoResizing就是一个相对于父控件的布 局解决方法:注意:它只能相对父控件布局:***在xcode中可以通过可视化的界面调整也…
转载自:http://www.jianshu.com/p/f6cf9ef451d9 本文我们将提到: aotulayout(手码) VFL aotulayout(Xib) Masonry(第三方框架) 是不是很期待呢?那就跟着小编走吧!本文Demo地址:https://github.com/JinqianChina/aotulayoutDemo.git 一.AutoLayout介绍 UI布局对于iOS开发者来说并不陌生,在iOS6之前,大家都是通过UI控件的Frame属性和Autoresizin…
[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:view2 attribute:NSLayoutAttributeRight multiplier:1 constant:10] 翻译过来就是:view1的左側.在,view2的右側.再多10个点,的地方. 附视图的属性和关系的值: typedef NS_ENUM(N…
参考自以下文章: http://blog.csdn.net/ysy441088327/article/details/12558097 http://blog.csdn.net/zhouleizhao/article/details/31741711 http://blog.csdn.net/dongbaojun_ios/article/details/12566529 首先介绍自动布局的概念: Auto Layout翻译过来意思是自动布局,通过内定的Constraint(约束)和各项条件来计算…
转载自:blog.csdn.net/hello_hwc IOS SDK详解 前言: 在开发的过程中,有时候创建View没办法通过Storyboard来进行,又需要AutoLayout,这时候用代码创建就派上用场了,这篇文章我会详解用代码实现的两个主要函数,然后讲解一个Demo,最后Demo我会附上下载链接. 用代码实现的函数一 第一个函数通过描述两个view的参考线之间的约束来创建约束,例如有一个label和一个textfield.约束这样描述 label的右边参考线和textfield的右边参…