在tableView上展示数据时遇到的问题

这些天下来,就做了一个界面,显然是慢了,在tableView上显示的假数据都搞得这么麻烦,显然是值得反思的,里面涉及到的技术要点还是有些的。


首先得需实现增删cell,然后得实现增删cell后假数据不能错乱,每一个cell里都有一个lable和一个textField,刚开始我写的是用一个数组存储lable要显示的数据,用字典来存储以后在textField里要显示的数据,可是在做增加删除cell时发现,处理起来比较麻烦,写了很多代码,而且让别人看起来很困难,可读性不强,只是自己一味的蛮干。

    NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:@"出发城市:",@"目的城市:",

                             @"出发日期:",@"旅客姓名:",@"证件号码:",@"配送地址:",nil];

    self.fieldLables = array;

    [array release];

    

    NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];

    self.tempValues = dict;

    [dict release];



因为在删除一个cell时要上调下面的cell里的关键字,所以牵一发而动全身,各种判断在里面。

后来经朋友提示,只用一个数组解决,在数组里装字典,字典里有lable要显示的数据,也存储textField要存储的数据,这样处理起来就方便多了,因为删除一个cell时数组就好办多了,这样写的代码清晰明了,可复用性也强。

  NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:@"出发城市:",@"目的城市:",

                             @"出发日期:",@"旅客姓名:",@"证件号码:",@"配送地址:",nil];

    

    NSMutableArray *dataArr = [[NSMutableArray alloc] initWithCapacity:0];

    for(int i = 0; i < [array count]; i++)

    {

        NSMutableDictionary *tmpdic = [[NSMutableDictionary alloc] initWithCapacity:0];

        [tmpdic setObject:[array objectAtIndex:i] forKey:@"labelText"];

        [tmpdic setObject:@"" forKey:@"textFieldText"];

        [dataArr addObject:tmpdic];

        [tmpdic release];

    }

    

    self.fieldLables = dataArr;

    [array release];

    [dataArr release];

然后用 tempValues用来随时取出数组里的字典,然后利用字典去取值。
当然里面还涉及到一些其它的要点,都是以后做东西会遇到的问题,但是这个点让我印象很深刻!这可能刚开始做的时候感觉两种都行,然而随着后面要处理的数据时,才发现后面一种会简单很多,这可能就是所谓的布局的问题了吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值