StoryBoard中使用xib
转自:http://blog.csdn.net/li6185377/article/details/8131042
一般自定义View 代码方式 有
在初始化的时候添加 子Views
- - (id)initWithFrame:(CGRect)frame
- {
- self = [super initWithFrame:frame];
- if (self) {
- // add subviews
- }
- return self;
- }
还有种 是自己画。 重载
- (void)drawRect:(CGRect)rect {
}
如果 布局复杂的话 这种代码方式 可以郁闷死人 看不到效果,慢慢调 ,代码冗长。。。 所以可以用到 XIB 来进行布局。
UIViewController 是我以前用的法子 但是 我只是想用到 View 用个View 每次都还要跟个Controller 。 还要保存他 不让他被释放 。。。
所以嘞 我找了个新方法 使用XIB 但不使用ViewController 当他的载体 let go
在你项目中 新建个 类 继承UIView

在新建个XIB XIB 的名称要跟 你新建 类名 一样


在XIB 中 选中View 改它Class 为你建的 类名

然后 你就可以在上面拖来拖去 就按ViewController 中的来就是 你可以发现 IBOUT 中 Object 变成了 你的类

最后 改下 View 的Autosizing 项

要使用这个UIView 跟平常就不一样了 因为 不是我们来 实例化它
平常我就通过 这个静态方法 来实例化
- +(LKTextView *)instanceTextView
- {
- NSArray* nibView = [[NSBundle mainBundle] loadNibNamed:@"LKTextView" owner:nil options:nil];
- return [nibView objectAtIndex:0];
- }
如果你要加点什么东西 就重载 initWithCoder
- -(id)initWithCoder:(NSCoder *)aDecoder
- {
- self = [super initWithCoder:aDecoder];
- if(self)
- {
- //you init
- }
- return self;
- }
使用的方法:
- LKTextView* text = [LKTextView instanceTextView];
- text.frame = CGRectMake(100, 100, text.frame.size.width, text.frame.size.height);
- text.textView.text = @"input ";
- [self.view addSubview:text];
StoryBoard中使用xib的更多相关文章
- iOS中 xib自定义View在storyboard中的使用
1,创建UIView 的SubClass 命名为MyView 2, new一个名为MyView的xib p1 3,配置xib的属性 p2 4,为View 添加背景色,添加一个按钮并定制按钮约束,这里我 ...
- 使用在storyBoard之外的xib创建对象
1.在storyBoard之外的xib 要注意的是:TableView的代理一定要设置为FilesOwner 使用: 方式一: 直接创建对象如下,(如果要使用xib里的控件,那么就要将xib里的控件作 ...
- 在Storyboard中为UITableView添加Header和Footer
我在这里所说的Header和Footer并不是sectionHeader和sectionFooter,而是指UITableView的tableHeaderView和tableFooterView,这两 ...
- 工程日记之HelloSlide(1):Swift自定义可视化组件的方法(继承UIView和在StoryBoard中设置)
需求描述 HelloSlide是把文本自动转化成幻灯片的软件,在幻灯片中我们有SmartArt:各种各样的几何形状,并且可以自定义大小和颜色,放在幻灯片不同的位置. 为了在我们的软件中实现类似的效果, ...
- xcode中使用xib添加autolayout中constrain to margins的不同
在使用xcode7 在storyboard中添加autolayout中发现 如果添加在view 直接添加到viewcontroller的view 上 constrain to margins 只 ...
- Storyboard中segue(转场)使用
源引:http://www.2cto.com/kf/201210/161737.html 一.视图切换类型介绍在storyboard中,segue有几种不同的类型,在iphone和ipad的开发中,s ...
- Swift-打开其它Storyboard中的自定义模态窗口
本文的方法针对OS X应用开发. 如果想在某个ViewController中,用模态窗口的方式,打开某个Storyboard中定义的WindowController.可用以下方式. let story ...
- iOS开发~UI布局(二)storyboard中autolayout和size class的使用详解
一.概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的: 1.Xcode6中增加了size class,在storyboard中如何使用? 2.a ...
- //四舍五入//得到倒序//比较字符串//拦截时间,实现超时锁屏//判断是否越狱//配置PodFile//Storyboard中跳转操作//处理不可逆的push界面操作
//处理不可逆的push界面操作 VerifyRealNameViewController *verifyRealNameCtrl = [VerifyRealNameViewController vi ...
随机推荐
- java并发编程:Executor、Executors、ExecutorService
1.Executor和ExecutorService Executor:一个接口,其定义了一个接收Runnable对象的方法executor,其方法签名为executor(Runnable comma ...
- 第009课 gcc和arm-linux-gcc和MakeFile
from:第009课 gcc和arm-linux-gcc和MakeFile 第001节_gcc编译器1_gcc常用选项_gcc编译过程详解 gcc的使用方法 gcc [选项] 文件名 gcc常用选项 ...
- Bootstrap 表格2
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- vue表单验证:vee-validate中文提示
官方文档:https://baianat.github.io/vee-validate/guide/ vee-validate可用于vue项目中进行表单验证,使用方法在官方API上都可以查到: 使用过 ...
- Java输入几行字符串
查找书籍 给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价. 输入格式: 输入第一行给出正整数n(<10),随后给出n本书的信息.每本书在一行中给出书名,即 ...
- Java的BigDecimal容易出现的坑
BigDecimal一般是用来做要求比较高的精准计算的.前几天在使用的时候遇到一个大坑,记录下. 这个问题产生是使用BigDecimal做除法(divide)运算,这个类的divide方法存在三个常用 ...
- tkinter学习-滚动条
阅读目录 Listbox 以列表的形式显示 Scrollbar 滚动条 Scale 更滚动条很相似,但更精准 Listbox: 说明:列表框控件,在Listbox窗口小部件是用来显示一个字符串列表给 ...
- mysql:10道mysql查询语句面试题
表结构 学生表student(id,name) 课程表course(id,name) 学生课程表student_course(sid,cid,score) 创建表的sql代码 ```sql creat ...
- Linux poll机制
1.用户空间调用(参考 poll(2) - Linux man page) int poll(struct pollfd *fds, nfds_t nfds, int timeout); it wai ...
- python知识点拾遗
内容概要 1.__str__ 2.os.path相关方法 1.__str__ 我们先定义一个Student类,打印一个实例: class Student(object): def __init__(s ...