UIView常用屬性集合

2021-07-02 04:54:02 字數 4540 閱讀 5462

*  通過乙個frame來初始化乙個ui控制項

*/- (id)initwithframe:(cgrect)frame;

// yes:能夠跟使用者進行互動

@property(nonatomic,getter=isuserinteractionenabled) bool userinteractionenabled;  // default is yes

// 控制項的乙個標記(父控制項可以通過tag找到對應的子控制項)

@property(nonatomic)                                 nsinteger tag;                // default is 0

//  吧圖層(可以用來設定圓角效果\陰影效果)

@property(nonatomic,readonly,retain)                 calayer  *layer;

@end

@inte***ce uiview(uiviewgeometry)

// 位置和尺寸(以父控制項的左上角為座標原點(0, 0))

@property(nonatomic) cgrect            frame;

// 位置和尺寸(以自己的左上角為座標原點(0, 0))

@property(nonatomic) cgrect            bounds;

// 中點(以父控制項的左上角為座標原點(0, 0))

@property(nonatomic) cgpoint           center;      

// 形變屬性(平移\縮放\旋轉)

@property(nonatomic) cgaffinetransform transform;   // default is cgaffinetransformidentity

// yes:支援多點觸控

@property(nonatomic,getter=ismultipletouchenabled) bool multipletouchenabled;   // default is no

@end

@inte***ce uiview(uiviewhierarchy)

// 父控制項

@property(nonatomic,readonly) uiview       *superview;

// 子控制項(新新增的控制項預設都在subviews陣列的後面, 新新增的控制項預設都顯示在最上面\最頂部)

@property(nonatomic,readonly,copy) nsarray *subviews;

// 獲得當前控制項所在的window

@property(nonatomic,readonly) uiwindow     *window;

// 從父控制項中移除乙個控制項

- (void)removefromsuperview;

// 新增乙個子控制項(可以將子控制項插入到subviews陣列中index這個位置)

- (void)insertsubview:(uiview *)view atindex:(nsinteger)index;

// 交換subviews陣列中所存放子控制項的位置

- (void)exchangesubviewatindex:(nsinteger)index1 withsubviewatindex:(nsinteger)index2;

// 新增乙個子控制項(新新增的控制項預設都在subviews陣列的後面, 新新增的控制項預設都顯示在最上面\最頂部)

- (void)addsubview:(uiview *)view;

// 新增乙個子控制項view(被擋在siblingsubview的下面)

- (void)insertsubview:(uiview *)view belowsubview:(uiview *)siblingsubview;

// 新增乙個子控制項view(蓋在siblingsubview的上面)

- (void)insertsubview:(uiview *)view abovesubview:(uiview *)siblingsubview;

// 將某個子控制項拉到最上面(最頂部)來顯示

- (void)bringsubviewtofront:(uiview *)view;

// 將某個子控制項拉到最下面(最底部)來顯示

- (void)sendsubviewtoback:(uiview *)view;

/**系統自動呼叫(留給子類去實現)**/

- (void)didaddsubview:(uiview *)subview;

- (void)willremovesubview:(uiview *)subview;

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

- (void)didmovetosuperview;

- (void)willmovetowindow:(uiwindow *)newwindow;

- (void)didmovetowindow;

/**系統自動呼叫**/

// 是不是view的子控制項或者子控制項的子控制項(是否為view的後代)

- (bool)isdescendantofview:(uiview *)view;  // returns yes for self.

// 通過tag獲得對應的子控制項(也可以或者子控制項的子控制項)

- (uiview *)viewwithtag:(nsinteger)tag;     // recursive search. includes self

/**系統自動呼叫(留給子類去實現)**/

// 控制項的frame發生改變的時候就會呼叫,一般在這裡重寫布局子控制項的位置和尺寸

// 重寫了這個寫方法後,一定呼叫[super layoutsubviews];

- (void)layoutsubviews;

@end

@inte***ce uiview(uiviewrendering)

// yes : 超出控制項邊框範圍的內容都剪掉

@property(nonatomic)                 bool              clipstobounds;

// 背景色

@property(nonatomic,copy)            uicolor          *backgroundcolor; // default is nil

// 透明度(0.0~1.0)

@property(nonatomic)                 cgfloat           alpha;                      // default is 1.0

// yes:不透明  no:透明

@property(nonatomic,getter=isopaque) bool              opaque;                     // default is yes

// yes : 隱藏  no : 顯示

@property(nonatomic,getter=ishidden) bool              hidden;

// 內容模式

@property(nonatomic)                 uiviewcontentmode contentmode;                // default is uiviewcontentmodescaletofill

@end

@inte***ce uiview(uiviewanimationwithblocks)

+ (void)animatewithduration:(nstimeinterval)duration delay:(nstimeinterval)delay options:(uiviewanimationoptions)options animations:(void (^)(void))animations completion:(void (^)(bool finished))completion;

+ (void)animatewithduration:(nstimeinterval)duration animations:(void (^)(void))animations completion:(void (^)(bool finished))completion;

+ (void)animatewithduration:(nstimeinterval)duration animations:(void (^)(void))animations;

+ (void)animatewithduration:(nstimeinterval)duration delay:(nstimeinterval)delay usingspringwithdamping:(cgfloat)dampingratio initialspringvelocity:(cgfloat)velocity options:(uiviewanimationoptions)options animations:(void (^)(void))animations completion:(void (^)(bool finished))completion;

@end

UIView 常用屬性 transform

transform 旋轉角度的引數是弧度值,弧度制是乙個浮點數,180度的角度對應的弧度值是pi 90 pi 2,45 pi 4 使用transformmake 方法是相對檢視初始位置的形變 transform cgaffinetransformrotate subview1.transform,m...

UIView的常用屬性

設定檢視的透明度.預設為1.完全透明 view.alpha 0 不透明 view.alpha 1 預設是 no,當設定為 yes時,超出當前檢視的尺寸的內容和子檢視不會顯示。view.clipstobounds yes 預設是 no,當設定為 yes,檢視就看不見了。view.hidden yes ...

UIView的常用屬性

uiview的常用屬性 1.frame 屬性 設定控制項位置和尺寸。因為它返回的是乙個cgrect,要設定x,y,width,height,所以要弄清楚在ios開發中,是怎樣計算的。在ios開發中,x,y都是父控制項左上角為 0,0 往右 x越來越大,往下 y越來越大。width和height就簡單...