iOS6下自定義UI控制項外觀效果

2021-06-19 16:03:20 字數 2623 閱讀 3902



raywenderlich

,先看看美化前後效果差別(左邊為美化前,右邊為美化後):

1.自定義導航欄

//豎屏

uiimage *image44 = [[uiimage imagenamed:@"surf_gradient_textured_44"] resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];  

//橫屏

uiimage *gradientimage32 = [[uiimage imagenamed:@"surf_gradient_textured_32"]  

resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];  

forbarmetrics:uibarmetricslandscapephone];  

//豎屏

uiimage *image44 = [[uiimage imagenamed:@"surf_gradient_textured_44"] resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];

//橫屏

uiimage *gradientimage32 = [[uiimage imagenamed:@"surf_gradient_textured_32"]

resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];

forbarmetrics:uibarmetricslandscapephone];

其中resizableimagewithcapinsets方法是ios5以後才有的,目的是用來指定拉伸區域,其引數insets制定可被拉伸的區域,uiedgetinsetsmake有四個引數,按順序分別標示top、left、bottom、right,指定的數字分別表示框起來的矩形框離邊界的距離,只有矩形框內的區域才會被拉伸,如下圖所示:

只會被拉伸紅色矩形區域,假如紅框左右距離邊距分別為25,距離上下邊距為0,則insets的寫法就是這樣:uiedgetinsetsmake(0,25,0,25),如果要使整張拉伸,則四個引數全部傳0即可。**中分別指定了橫屏和豎屏下的兩種方式。

同時,可以指定導航欄底部的陰影、顏色和uibarbuttonitem的樣式等:

uiimage *button30 = [[uiimage imagenamed:@"button_textured_30"]  

resizableimagewithcapinsets:uiedgeinsetsmake(0, 5, 0, 5)];  

barmetrics:uibarmetricsdefault];  

uiimage *button30 = [[uiimage imagenamed:@"button_textured_30"]

resizableimagewithcapinsets:uiedgeinsetsmake(0, 5, 0, 5)];

barmetrics:uibarmetricsdefault];

uiimage *buttonback30 = [[uiimage imagenamed:@"button_back_textured_30"]  

resizableimagewithcapinsets:uiedgeinsetsmake(0, 13, 0, 5)];  

forstate:uicontrolstatenormal barmetrics:uibarmetricsdefault];  

2.設定底部tab欄的樣式(背景、選中、預設)

uiimage *tabbackground = [[uiimage imagenamed:@"tab_bg"]  

resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];  

[uiimage imagenamed:@"tab_select_indicator"]];  

uiimage *tabbackground = [[uiimage imagenamed:@"tab_bg"]

resizableimagewithcapinsets:uiedgeinsetsmake(0, 0, 0, 0)];

[uiimage imagenamed:@"tab_select_indicator"]];

效果如下:

UI002 自定義控制項

ios開發ui基礎 自定義控制項 手寫控制項 frame,center和bounds屬性 一 手寫控制項 1.手寫控制項的步驟 1 使用相應的控制項類建立控制項物件 2 設定該控制項的各種屬性 3 新增控制項到檢視中 父控制項 子控制項 4 如果是button等控制項,還需考慮控制項的單擊事件等 5...

WPF 自定義UI控制項學習

最近專案中運用到了wpf處理三維軟體,在c s結構中wpf做ui還是有很多優越性,簡單的學了一點wpf知識,成功的完成專案目標。專案過度階段對於wpf的一些基本特點有了進一步了解 至此花費一點時間研究研究wpf控制項。為以後的專案開發中提供一些可觀的資源也是不錯的。目前控制項完成數量有限,空餘時間較...

簡單的說一下自定義控制項

自定義控制項 自定義view 說到自定義控制項,就要明白android中所有的空間都是繼承與view的。view的繪製主要是由以下三個方法,measure,layout draw 1 measure方法可以確定自定義view大小的屬性,以及view的測量。2 layout 確定view 的位置。呼叫...