一般自定义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];

IOS 使用XIB 自定义View的更多相关文章

  1. iOS 用xib自定义View

      网上有很多关于实现用xib自定义View,那我为什么还要写呢?第一,我用他们的方法都没有实现.第二,用xib遇到了很多问题,想分享给大家.    用xib自定义View:FHCustomView ...

  2. iOS中 xib自定义View在storyboard中的使用

    1,创建UIView 的SubClass 命名为MyView 2, new一个名为MyView的xib p1 3,配置xib的属性 p2 4,为View 添加背景色,添加一个按钮并定制按钮约束,这里我 ...

  3. iOS 用xib自定义view控件 debug笔记

    1.在view不是很复杂的情况下,如果多次检查后依旧出现coding-compliant这种情况,干脆彻底删除这个xib重新新建一个xib来做一遍.(至今未明真相) 2.初始化xib中的view的大致 ...

  4. iOS开发——UI基础-自定义构造方法,layoutSubviews,Xib文件,利用Xib自定义View

    一.自定义构造方法 有时候需要快速创建对象,可以自定义构造方法 + (instancetype)shopView { return [[self alloc] init]; } - (instance ...

  5. 详解iOS开发之自定义View

    iOS开发之自定义View是本文要将介绍的内容,iOS SDK中的View是UIView,我们可以很方便的自定义一个View.创建一个 Window-based Application程序,在其中添加 ...

  6. swift 之xib自定义view可视化到storyboard

    首先直入正题:@IBInspectable & @IBDesignable 对于 @IBInspectable 和 @IBDesignable 可详见官方文档 : Creating a Cus ...

  7. 【转】iOS 通过xib自定义UITableViewCell【原创】

    原文网址:http://blog.it985.com/9683.html 在使用tableView的时候,如果cell的布局过于复杂,通过代码搭建的话不够直观.并且要不停的调整位置,字体什么的.这时, ...

  8. [IOS Tableview] cell自定义view显示错误问题

    问题介绍:按照tableviewcell的tag自定义cell的view显示的时候,会出现拖动时显示错误情况(在Tableview的范围超出屏幕范围需要滑动的情况下). 我做的是一个下载界面,我为了简 ...

  9. ios --xib自定义,解决在导航栏不透明的情况下,自定义xib view高度被压缩64的问题

    在使用xib自定义view的时候,个人习惯性的直接使用xib中的约束,所以自然而然的要打开Autolayout.以前在使用的时候没有发现什么问题,最近项目中使用的时候突然发现在导航栏透明的情况下,出现 ...

随机推荐

  1. ubuntu 忘记root密码了不用怕,看这里

    方法来自这里:http://jingyan.baidu.com/article/8065f87fe20832233024985a.html

  2. iOS - BSDSocket 的使用

    1.BSDSocket 一套 unix 系统下的 socket API(纯 C). iOS 系统基于 unix,所以支持底层的 BSD Socket,在 Xcode 中可以直接使用. 2.基本使用 2 ...

  3. Shlwapi.h头文件的使用

    // TestShlwAPI.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h"#include <Shlwapi.h>#pragma ...

  4. Posix共享内存区

    1.概述 Posix提供了两种在无亲缘关系进程间共享内存区的方法: (1)内存映射文件:先有open函数打开,然后调用mmap函数把得到的描述符映射到当前进程地址空间中的一个文件(上一篇笔记所用到的就 ...

  5. System V IPC

    1.概述 System V IPC共有三种类型:System V消息队列.System V 信号量.System V 共享内存区. System V IPC操作函数如下: 2.key_t键和ftok函 ...

  6. Linux 配置rdate时间服务器方法

    配置多台服务器时,经常需要让各个服务器之间的时间保持同步,如果服务器有外网环境,可以直接同外部的时间服务器更新时间,可以采用rdate命令更新时间: rdate -s tick.greyware.co ...

  7. debian系在线安装软件apt-get命令族

    一.背景 apt-get install/remove在线安装/卸载文件真是方便极了. 但是有时候安装/卸载文件不清楚文件在服务器上的实际命名,例如想安装sndfile.应该执行下面哪个命令呢? ap ...

  8. Latex算法伪代码使用总结

    Latex伪代码使用总结 algorithmicx例子 相应代码: \documentclass[11pt]{ctexart} \usepackage[top=2cm, bottom=2cm, lef ...

  9. mysql开启skip-name-resolve 导致root@127.0.0.1(localhost)访问引发的ERROR 1045 (28000)错误解决方案

    为什么配置skip-name-resolve? 由于mysql -h${ip} 远程访问速度过慢, mysql -uroot -p123456 根据网友经验(https://www.cnblogs.c ...

  10. Azure 怎么开通FTP

    1. 需要在Azure Portal设置端口:21, 1035, 1036, 1037,1038,1039,1040 2. 需要内网放开端口:21, 1035, 1036, 1037,1038,103 ...