史上最简单的侧滑栏菜单

史上最简单的侧滑栏菜单_第1张图片

对于侧滑栏,相信很多人都用过,下面我将用最简单的方法实现一下,侧滑栏菜单:

HYXSideBar *hyxsidebar = [[HYXSideBar alloc] init];
    hyxsidebar.delegate = self;
    hyxsidebar.dataArray = self.dataArray;
    [hyxsidebar callSideBarIn:self];

已经创建好了一个侧滑栏菜单,如图:

史上最简单的侧滑栏菜单_第2张图片
侧滑栏.gif

并且,该侧滑栏菜单拥有UITableView的所有属性,可以通过代理方法一一调用

/**
 获取相应组里面的行数

 @param tableView sidebar里面的tableview
 @param section 第几组
 @return 返回的行数
 */
- (NSInteger)SideBar:( UITableView *)tableView numberOfRowsInSection:(NSInteger)section;

/**
 cell的点击事件

 @param tableView sidebar
 @param indexPath 点击的cell位置
 */
- (void)SideBar:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
/**
 header的点击事件
 
 @param tableView sidebar
 @param index 点击的header的位置
 */
- (void)SideBar:(UITableView *)tableView didSelectHeaderAtIndex:(NSInteger )index;
/**
 得到相应的cell(也是可以随意自定义的)
 
 @param tableView sidebar里面的tableview
 @param indexPath 相应位置里面的
 @return 返回需要的cell
 */
- (UITableViewCell *)SideBar:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

/**
 总组数

 @param tableView SideBar
 @return 返回的总组数
 */
- (NSInteger)numberOfSectionsInSideBar:(UITableView *)tableView;

/**
 每一组的header名称

 @param tableView sidebar
 @param section 相应的组序列
 @return  组的名称
 */
- (NSString *)SideBar:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section;

/**
 每一组的footer的名称

 @param tableView sidebar
 @param section 相应的组序列
 @return 每一组的footer名称
 */
- (NSString *)SideBar:(UITableView *)tableView titleForFooterInSection:(NSInteger)section;

/**
 cell生命周期,将要描绘出来

 @param tableView sidebar
 @param cell 将要描绘的cell
 @param indexPath cell的位置
 */
- (void)SideBar:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath;

/**
 cell的高度

 @param tableView sidebar
 @param indexPath cell的位置
 @return 返回的cell的高度
 */
- (CGFloat)SideBar:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;

/**
 Header的高度

 @param tableView sidebar
 @param section 组
 @return 高度
 */
- (CGFloat)SideBar:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;

/**
 footer的高度
 
 @param tableView sidebar
 @param section 组
 @return 高度
 */
- (CGFloat)SideBar:(UITableView *)tableView heightForFooterInSection:(NSInteger)section;

/**
 返回一个描述header的view

 @param tableView sidebar
 @param section 相应的组别
 @return 返回的viwe
 */
- (UIView *)SideBar:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;
/**
 返回一个描述header的view
 
 @param tableView sidebar
 @param section 相应的组别
 @return 返回的viwe
 */
- (UIView *)SideBar:(UITableView *)tableView viewForFooterInSection:(NSInteger)section;
如此就可以对侧边栏进行个性化设置了。

奉上demo:史上最简单的侧边栏

你可能感兴趣的:(史上最简单的侧滑栏菜单)