UITableView中cell的圆角(第一个和最后一个)
生活随笔
收集整理的這篇文章主要介紹了
UITableView中cell的圆角(第一个和最后一个)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#import?<UIKit/UIKit.h>
@interface?SemicircleView?:?UIView
/**
?*??傳入數值(改變圓角位置)
?*
?*??@param?index?0:下,1:上,2,上下,3無
?*/
-?(void)upOrdownsemicirc:(NSInteger)index;
@end
@interface?SemicircleView?()?{
????NSInteger?_width;
????NSInteger?_height;
????CGFloat?_angle;
????UIView?*_viewDetal;
}
@end
@implementation?SemicircleView
-?(instancetype)initWithFrame:(CGRect)frame?{
????self?=?[super?initWithFrame:frame];
????if?(self)?{
????????_width?=?frame.size.width;
????????_height?=?frame.size.height;
????????self.backgroundColor?=?[UIColor?whiteColor];
????????[self?initView];
????}
????return?self;
}
-?(void)initView?{
????UIView?*view?=?[[UIView?alloc]initWithFrame:CGRectMake(0,?0,?_width,?_height)];
????//[UIColor?colorWithHexString:@"f3f3f3"];
????view.backgroundColor?=?[UIColor?colorWithHexString:@"f3f3f3"];
//????view.backgroundColor?=?[UIColor?redColor];
????view.layer.cornerRadius?=?10;
????view.clipsToBounds?=?YES;
????
????_viewDetal?=?[[UIView?alloc]initWithFrame:CGRectMake(0,?0,?_width,?_height/2)];
????_viewDetal.backgroundColor?=?[UIColor?colorWithHexString:@"f3f3f3"];
//????_viewDetal.backgroundColor?=?[UIColor?redColor];
????[self?addSubview:view];
????[self?addSubview:_viewDetal];
}
-?(void)upOrdownsemicirc:(NSInteger)index?{
????switch?(index)?{
????????case?0:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?_width,?_height/2);
????????????break;
????????case?1:
????????????_viewDetal.frame?=?CGRectMake(0,?_height/2,?_width,?_height/2);
????????????break;
????????case?2:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?0,?0);
????????????break;
????????case?3:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?_width,?_height);
????????????break;
????????default:
????????????break;
????}
}
?????????[cell.semic?upOrdownsemicirc:1];
????}else?if?(indexPath.row?==?self.dataSource.count-1)?{
????????[cell.semic?upOrdownsemicirc:0];
????}else?{
????????[cell.semic?upOrdownsemicirc:3];
????}
@interface?SemicircleView?:?UIView
/**
?*??傳入數值(改變圓角位置)
?*
?*??@param?index?0:下,1:上,2,上下,3無
?*/
-?(void)upOrdownsemicirc:(NSInteger)index;
@end
?
?
#import?"semicircleView.h"@interface?SemicircleView?()?{
????NSInteger?_width;
????NSInteger?_height;
????CGFloat?_angle;
????UIView?*_viewDetal;
}
@end
@implementation?SemicircleView
-?(instancetype)initWithFrame:(CGRect)frame?{
????self?=?[super?initWithFrame:frame];
????if?(self)?{
????????_width?=?frame.size.width;
????????_height?=?frame.size.height;
????????self.backgroundColor?=?[UIColor?whiteColor];
????????[self?initView];
????}
????return?self;
}
-?(void)initView?{
????UIView?*view?=?[[UIView?alloc]initWithFrame:CGRectMake(0,?0,?_width,?_height)];
????//[UIColor?colorWithHexString:@"f3f3f3"];
????view.backgroundColor?=?[UIColor?colorWithHexString:@"f3f3f3"];
//????view.backgroundColor?=?[UIColor?redColor];
????view.layer.cornerRadius?=?10;
????view.clipsToBounds?=?YES;
????
????_viewDetal?=?[[UIView?alloc]initWithFrame:CGRectMake(0,?0,?_width,?_height/2)];
????_viewDetal.backgroundColor?=?[UIColor?colorWithHexString:@"f3f3f3"];
//????_viewDetal.backgroundColor?=?[UIColor?redColor];
????[self?addSubview:view];
????[self?addSubview:_viewDetal];
}
-?(void)upOrdownsemicirc:(NSInteger)index?{
????switch?(index)?{
????????case?0:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?_width,?_height/2);
????????????break;
????????case?1:
????????????_viewDetal.frame?=?CGRectMake(0,?_height/2,?_width,?_height/2);
????????????break;
????????case?2:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?0,?0);
????????????break;
????????case?3:
????????????_viewDetal.frame?=?CGRectMake(0,?0,?_width,?_height);
????????????break;
????????default:
????????????break;
????}
}
?
?使用:
if?(indexPath.row?==?0)?{?????????[cell.semic?upOrdownsemicirc:1];
????}else?if?(indexPath.row?==?self.dataSource.count-1)?{
????????[cell.semic?upOrdownsemicirc:0];
????}else?{
????????[cell.semic?upOrdownsemicirc:3];
????}
?
效果圖:
?
轉載于:https://www.cnblogs.com/hxwj/p/4585725.html
總結
以上是生活随笔為你收集整理的UITableView中cell的圆角(第一个和最后一个)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js比较运算符==与===的区别
- 下一篇: 从Http它被连接到WebSocket