UISlider滑塊控制項

2021-09-30 10:20:25 字數 2112 閱讀 6848

uislider例項提供乙個控制項,讓使用者通過左右拖動乙個滑塊(可稱其為「縮圖」)來選擇乙個值。預設情況下,滑塊的最小值為0.0,最大值為1.0。

當然可以在屬性面板中通過設定

minimumvalue

maximumvalue

來進行定製這兩個值。如果要為控制項兩端設定樣式,可以新增一對相關影象(

minimumvalueimage

maximumvalueimage屬性

)來加強該設定,也可在**中通過

setmimimumtrackimage: forstate:

setmaximumtrackimage: forstate:

方法來新增設定兩端。

滑塊的continuous

屬性控制在使用者拖動縮圖時乙個滑塊是否持續傳送值更新。設定為no(預設為yes)時,使用者釋放縮圖時滑塊僅傳送乙個動作事件。uislider類還允許直接更新其縮圖元件,通過呼叫

setthumbimage: forstate:

方法可定製自己的滑塊。

自定義uislider的樣式和滑塊的**:

[pre]//

左右軌的

uiimage *stetchlefttrack = [uiimage imagenamed:

@"snow_bar.png"];

uiimage *stetchrighttrack = [uiimage imagenamed:

@"sun_bar.png"];

//

滑塊

uiimage *thumbimage = [uiimage imagenamed:

@"mark.png"];

uislider *slider = [[uislider alloc] initwithframe:cgrectmake(30,

320,

257,

7)];

slider.backgroundcolor = [uicolor clearcolor];

slider.value =

1.0;

slider.minimumvalue =

0.7;

slider.maximumvalue =

1.0;

[slider setminimumtrackimage:stetchlefttrack forstate:uicontrolstatenormal];

[slider setmaximumtrackimage:stetchrighttrack forstate:uicontrolstatenormal];

//

注意這裡務必加上uicontrolstatehightlighted的狀態,否則當拖動滑塊時滑塊將變成原生的控制項

[slider setthumbimage:thumbimage forstate:uicontrolstatehighlighted];

[slider setthumbimage:thumbimage forstate:uicontrolstatenormal];

//

滑塊拖動時的事

[slider addtarget:self action:@selector(slidervaluechanged:) forcontrolevents:uicontroleventvaluechanged];

//

滑塊拖動後的事件

[slider addtarget:self action:@selector(sliderdragup:) forcontrolevents:uicontroleventtouchupinside];

[self.view addsubview:slider];

滑塊控制項UISlider

frame只能改變位置和寬度,不能改變高度 uislider slider uislider alloc initwithframe cgrectmake 10,30,200,40 改變滑塊的背景顏色 slider.backgroundcolor uicolor graycolor 設定滑條左邊的顏...

滑塊控制項UISlider

滑塊控制項uislider繼承與uicontrol uislider slider uislider alloc initwithframe cgrectmake 30,200,300,34 slider.minimumvalue 0 最小值 預設0 slider.maximumvalue 1 最大...

自定義UISlider的樣式和滑塊

又做完乙個專案,遂到了寫帖時間了,要跟大家分享的是 自定義uislider的和滑塊,先看一下效果 然後是實現了,我們使用的是uislider的setminimumtrackimage,和setmaximumtrackimage方法來定義 的,這兩個方法可以設定滑塊左邊和右邊的的,不過如果用的是同一張...