自定義View的兩種方式

2022-09-16 12:30:15 字數 2221 閱讀 5116

(一)xib自定義view

1.思路

2.關鍵**

1

#import23

@class45

@inte***ce67

/**8* 模型資料9*/

1113

14/**15

* 通過模型資料來建立乙個view

16*/

1819

@end

1

#import""

2#import""

34@inte***ce

5 @property (weak, nonatomic) iboutlet uiimageview *iconview;

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

7@end89

@implementation

10//

先從xib中讀取出相應布局,在呼叫模型的set方法,設定

1220

2225

2736

37@end

(二)純**實現自定義view

1.思路

1)同樣可以在view.m方法中重寫initwithframe:(cgrect)frame這個方法,在這個方法中主要是對一些新的內容控制項的新增

2)在資料模型屬性的set方法中對內容控制項進行設定,以及空間的frame設定

3)在- (void)willmovetosuperview:(uiview *)newsuperview,這個方法中實現自身frame的設定

2.關鍵**

1//2

view自定義test4//

5//created by 許霞 on 16/9/7.6//

7//89

#import

1011

@inte***ce

testview : uiview

12 @property (nonatomic,strong) nsdictionary *datadict;

13 +(instancetype)testview;

14@end

testview.h

1//2

view自定義test4//

5//created by 許霞 on 16/9/7.6//

7//89

#import

"testview.h"10

@inte***ce

testview()

11 @property (nonatomic,strong)uilabel *textlable;

12 @property (nonatomic,strong)uiimageview *imageview;

13@end

14@implementation

testview

1516 +(instancetype)testview

1720 -(instancetype) initwithframe:(cgrect)frame

2132

return

self;33}

3435 - (void)setdatadict:(nsdictionary *)datadict

3644

45 - (void)willmovetosuperview:(uiview *)newsuperview

4655

56@end

testview.m

//

//view自定義test

////

created by 許霞 on 16/9/7.

////

#import

"viewcontroller.h

"#import

"testview.h

"@inte***ce

viewcontroller ()

@end

@implementation

viewcontroller

- (void

)viewdidload ;

[self.view addsubview:testview];

}- (void

)didreceivememorywarning

@end

viewcontroller.m

自定義dialog的兩種方式

介紹自定義對話方塊 dialog 的兩種方式 方式一 首先自定義乙個自己想要設計的對話方塊的介面布局,我的是這樣的 然後在activity類中進行展示,這裡我寫了乙個showinputpwddialog方法 輸入密碼對話方塊 private void showinputpwddialog 方式二 可...

自定義異常的兩種方式

自定義異常的兩種方式 一 丟擲異常 def greet name,city if notisinstance name,str raise typeerror name must be str if notisinstance city,str raise typeerror age must be...

自定義View兩種使用方法

一種是自定義屬性的view,另外一種是引用定義好的布局 xml version 1.0 encoding utf 8 xmlns android xmlns xmlns tools android layout width match parent android layout height mat...