IOS使用Xib建立自定義View

2021-07-09 11:45:18 字數 1950 閱讀 7405

新建object-c類,從uiview繼承,如新建flagview

#import @class flagbean;

@inte***ce flagview : uiview

@property(nonatomic,weak)flagbean *flag;

+(instancetype)flagview;

@end

flagview.m檔案

#import "flagview.h"

#import "flagbean.h"

@inte***ce flagview ()

@property (weak, nonatomic) iboutlet uilabel *namelabel;

@property (weak, nonatomic) iboutlet uiimageview *imagehead;

@end

@implementation flagview

/*// only override drawrect: if you perform custom drawing.

// an empty implementation adversely affects performance during animation.

- (void)drawrect:(cgrect)rect

*/+(instancetype)flagview

- (void)setflag:(flagbean *)flagbean

@end

注意:預設自己通過繼承uiview建立的自定義view ,在m檔案中是沒有如下的**的,需要自己新增,如:

@inte***ce flagview ()

@property (weak, nonatomic) iboutlet uilabel *namelabel;

@property (weak, nonatomic) iboutlet uiimageview *imagehead;

@end

當然上面的@property中的內容是需要從xib中建立引用的。

新建乙個同名xib檔案,修改file's owner的custom class為新建的自定義view類名

將xib檔案中的view鏈結到自定義view中

在xib檔案裡可以加入其它系統控制項,並連線到自定義view類中

注意:如要在xib檔案的右上角的屬性欄中指明class 是「flagview」,

要不然只能寫如下**:

- (void)awakefromnib

在storyboard中加入乙個通用view控制項,並指定custom class為自定義view類,按control連線到viewcontroller類中

在外部引用的時候:

flagview *flagview = [flagview flagview];

flagview.bounds = cgrectmake(0, 0, 200, 80);

2

3

4

5

- (void)awakefromnib

iOS 自定義xib並在xib中使用

新建乙個customview並為它建立乙個customview.xib 選擇customview.xib的file s owner,把customer class指定為customview。修改customview.m檔案如下 import customview.h implementation c...

iOS使用xib自定義uiview

一般自定義view 方式 有 在初始化的時候新增 子views cpp view plain copy id initwithframe cgrect frame returnself 還有種 是自己畫。過載 void drawrect cgrect rect 如果 布局複雜的話 這種 方式 可以鬱...

IOS 使用XIB 自定義View

一般自定義view 方式 有 在初始化的時候新增 子views cpp view plain copy id initwithframe cgrect frame return self 還有種 是自己畫。過載 void drawrect cgrect rect 如果 布局複雜的話 這種 方式 可以...