在我们的很多项目实现过程中,都需要数据的展开与收回,就像腾讯QQ中的联系人,也是一个cell的收回操作。上一篇博文讲述了如何展开一个两级的数据源,那么我们就接着改例城讲解一下数据的展开与收回。在这里主要是为了讲解两个知识点,在tableview中插入数据与删除数据。
首先呢,我们要思考一下,如何设置自己的算法,能够做到逻辑清楚,代码简介,功能完善呢!在这里教大家一个比较简单的方法:仍然用一个数据源,在数据源里面给每一个section添加是否展开标志位,我们来通过判断这个标志位确定改section的返回行数与插入或者删除数据。
using System;
using Foundation;
using System.Collections.Generic;
namespace Expland
{
public class Data
{
public Data ()
{
}
//一级标题
public string Title{ get; set;}
//是否展开标志位
public bool ExplandFlag{ get; set;}
//二级标题
public List<string> SecondTitle = new List<string> ();
}
}
一般来说,数据的展开与收回都是由于出发一个事件来进行操作的,这里呢,我们在每一个section的尾部添加了一个小图标,点击该图标的时候,图标旋转,二级数据展开,再次点击的时候,图标回到原来位置,数据收回。那么这里我们就重新定义了一个继承