在軟體中看到的滑塊都比較好看,在網上找了幾個例子,知道怎麼自定義uislider的樣式和滑塊
先建立
uislider *slider1 = [[uislider alloc] initwithframe:cgrectmake(30, 30, 257, 7)];
再設定顏色和數值範圍以及預設值的大小
slider1.backgroundcolor = [uicolor clearcolor];
slider1.value = 2.0;//預設值
slider1.minimumvalue = 0.5;//最小值
slider1.maximumvalue = 5.0;//最大值
接著就是新增滑動條和滑塊的
兩端新增了相同的,而且長寬和控制項寬度基本一致就不會出現拉伸的效果。。
uiimage * stetchlefttrack = [uiimage imagenamed:@"left.png"];
uiimage * stetchrighttrack = [uiimage imagenamed:@"right.png"];
uiimage *thumbimage = [uiimage imagenamed:@"bu.png"];
[slider1 setminimumtrackimage:stetchlefttrack forstate:uicontrolstatenormal];
[slider1 setmaximumtrackimage:stetchrighttrack forstate:uicontrolstatenormal];
設定滑塊屬性
[slider1 setthumbimage:thumbimage forstate:uicontrolstatehighlighted];
這是為了滑塊在按下的時候滑塊的樣子不會顯示為系統預設的樣子,注視掉可以看得出來
[slider1 setthumbimage:thumbimage forstate:uicontrolstatenormal];
滑動事件
[slider1 addtarget:self action:@selector(slidervaluechanged) forcontrolevents:uicontroleventvaluechanged];
//滑動滑塊時的事件
[slider1 addtarget:self action:@selector(sliderdragup) forcontrolevents:uicontroleventtouchupinside];
//移動滑塊後的事件
[self.view addsubview:slider1];
[slider1 release];
下面是**
- (void)viewdidload
- (void)slidervaluechanged
- (void)sliderdragup
ios 自定義控制項 方法
initwithframe 前面已經見到,程式建立 ui控制項時常常會呼叫該方法執行初始化,因此,如果你需要對 ui控制項執行一些額外的初始化,即可通過重寫該方法來實現。initwithcoder 程式通過在 nib檔案中載入完該控制項後會自動呼叫該方法。因此,如果程式需要在 nib檔案中載入該控制...
iOS自定義控制項 CustomTextView
以前使用輸入框文字限制,基本上是打字過程中階段輸入,效果很不好,特別輸中文的過程中,好不容易用智慧型拼音打了一長串字,結果被自動擷取打斷了,變成了拼音,簡直是氣死寶寶了。後來想了個辦法,就是識別輸入框輸入中文,在使用者把一長串拼音確認轉換為文字之後再擷取。下面看效果 效果 一 使用自動擷取 效果 二...
iOS之自定義控制項
注意 如果使用 方式建立控制項,那麼建立時一定會呼叫initwithframe 方法 如果使用xib stotyboard方式建立控制項,那麼在建立時一定會呼叫initwithcoder 方法 在initwithcoder 裡面訪問屬性,會發現屬性為nil,因為此時自定義好控制項正在初始化,屬性還沒...