UIView部分屬性介紹

2021-07-16 17:13:53 字數 1976 閱讀 1284

opaque:該屬性用與決定該訊息接收者(uiview instance)是否讓其檢視不透明。 

其用處在於:給繪圖系統提供乙個效能優化開關。如果該值為yes, 那麼繪圖在繪製該檢視的時候把整個檢視當作不透明對待。這樣,繪圖系統在執行繪圖過程中會優化一些操作並提公升系統效能;如果是設定為no, 繪圖系統將其和其他內容平等對待,不去做優化操作。為了效能方面的考量,預設被置為yes(意味著『優化』)。 

另一方面,這個訊息和alpha 是有關係的。 

乙個不透明檢視需要整個邊界裡面的內容都是不透明的。基於這個原因,opaque設定為yes,要求對應的alpha必須為1.0。如果乙個uiview例項opaque被設定為yes, 而同時它又沒有完全填充它的邊界(bounds),或者它包含了整個或部分的透明的內容檢視,那麼將會導致未知的結果。 

因此,如果檢視部分或全部支援透明,那麼你必須把opaque這個值設定為no.

tintcolor:它是乙個列舉值,定義了tint color的調整模式

enum uiviewtintadjustmentmode : int

因此,當tintadjustmentmode屬性設定為dimmed時,tintcolor的顏色值會自動變暗。而如果我們在檢視層次結構中沒有找到預設值,則該值預設是normal。

與tintcolor相關的還有乙個tintcolordidchange方法,這個方法會在檢視的tintcolor或tintadjustmentmode屬性改變時自動呼叫。另外,如果當前檢視的父檢視的tintcolor或tintadjustmentmode屬性改變時,也會呼叫這個方法。我們可以在這個方法中根據需要去重新整理我們的檢視。

clearscontextbeforedrawing:決定在檢視重畫之前是否先清理檢視以前的內容,預設值為yes

如果你把這個屬性設為no,那麼你要保證能在 drawrect:方法中正確的繪畫。如果你的**已經做了大量優化,那麼設為no可以提高效能,尤其是在滾動時可能只需要重新繪畫檢視的一部分。

maskview:蒙版

詳細介紹:

multipletouchenabled:是否支援多點觸控,預設為no

exclusivetouch:決定當前檢視是否是處理觸控事件的唯一物件,預設為no

transform:通過設定該屬性,我們可以實現調整該view在其superview中的大小和位置。

具體來說,transform(變化矩陣)是一種3×3的矩陣,通過這個矩陣我們可以對乙個座標系統進行縮放,平移,旋轉以及這兩者的任意組著操作。而且矩陣的操作不具備交換律,即矩陣的操作的順序不同會導致不同的結果。

常用的三種實現選中的方式:

view.transform=cgaffinetransformscale(view.transform, 0.5, 0.5); // 實現的是放大和縮小 view.transform=cgaffinetransformrotate(view.transform, 0.2); //實現的是旋轉 view.transform=cgaffinetransformtranslate(view.transform, 20, 20); //實現的是平移

由此可以發現螢幕旋轉其實就是通過view的矩陣變化實現,當裝置監測到旋轉的時候,會通知當前程式,當前程式再通知程式中的window,window會通知它的rootviewcontroller的,rootviewcontroller對其view的transform進行設定,最終完成旋轉。

autoresizessubviews:這個屬性是決定當檢視大小邊界發生改變時,其子檢視是否也跟著自動調整大小。

contentscalefactor:應用到當前檢視的比例scale。

focused:是否為焦點

RelativeLayout部分屬性

android中relativelayout各個屬性 android layout alignparentleft true 找不到有時候 2014年09月05日 綜合 共 945字 字型大小 小 中 大 android layout above id 將控制項置於給定id控制項之上 android...

DEV GridView 部分屬性

gridview.indicatorwidth 行指示面板的寬度 gridview.rowheight 行高 gridview.optionscustomization.allowcolumnmoving 是否允許移動列 gridview.optionscustomization.allowcolu...

Active Directoy部分屬性解釋

active directoy部分屬性解釋 型別 anizationalperson用來描述使用者的組織資訊,如僱傭人員,部門,辦公室等等.屬性 description 描述 distinguishedname 即物件所在的dn whencreated 建立時間 whenchanged 修改時間 m...