1. 程式人生 > >iOS清除UIDatePicker和UIPickerView中間Row上面的分割線

iOS清除UIDatePicker和UIPickerView中間Row上面的分割線

在iOS目前的官方API裡面,還沒有清除UIDatePicker和UIPickerView的方法,這裡介紹2種方法做到這一點

第一種方案就是貼UIImageView,對,貼上上線條去遮蓋這系統原有的分割線,這種方法笨,但是實用。

第二種方案是便利UIDatePicker和UIPickerView上面的所有View,並且設定row上面的View為透明的,這種方法也是本文介紹的重點,具體程式碼如下:

- (void)clearSeparatorWithView:(UIView * )view
{
    if(view.subviews != 0  )
    {
        if(view.bounds.size.height < 5)
        {
            view.backgroundColor = [UIColor clearColor];
        }
        
        [view.subviews enumerateObjectsUsingBlock:^( UIView *  obj, NSUInteger idx, BOOL *  stop) {
            [self clearSeparatorWithView:obj];
        }];
    }
    
}

呼叫方法就頁很簡單,下面以UIDatePicker為例,程式碼如下:
    // date picker
    self.birthdayPV=[[UIDatePicker alloc]initWithFrame:baseView.frame];
    [self.birthdayPV addTarget:self action:@selector(dateChanged:) forControlEvents:UIControlEventValueChanged];
    self.birthdayPV.datePickerMode=UIDatePickerModeDate;
//呼叫如下方法清除row的分割線
    [self clearSeparatorWithView:self.birthdayPV];
清除前的效果圖如下:


清除分割線之後的效果圖如下:


如果對你的開發有幫助,請點個贊!