亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

IOSUITableView拖動排序功能

2019-11-14 18:30:05
字體:
來源:轉載
供稿:網友

  UITbableView作為列表展示信息,除了展示的功能,有時還會用到刪除,排序等功能,下面就來講解一下如何實現排序。

  排序是當表格進入編輯狀態后,在單元格的右側會出現一個按鈕,點擊按鈕,就可以拖動單元格,移動位置,進行手動排序。

 

使用系統自帶拖動排序功能的步驟:

1、讓tableView進入編輯狀態,也就是設置它的editing為YES

2、返回編輯模式,也就是實現UITableViewDelegate中的tableview:editingStyleForRowAtIndexPath:方法,在里面返回UITableViewCellEditingStyleNone模式。如果不實現,默認返回的就是刪除模式

3、實現tableView:moveRowAtIndexPath:toIndexPath方法,只要實現該方法,就能實現單元格的拖動排序,但只是實現了表面的排序,并沒有修改真實地數據

4、在方法中完成數據模型的更新

代碼:

//  ViewController.m//  JRTableView刪除////  Created by jerehedu on 15/6/11.//  Copyright (c) 2015年 jerehedu. All rights reserved.//#import "ViewController.h"#import "Goods.h"@interface ViewController ()<UITableViewDataSource, UITableViewDelegate>{    UITableView *_tableView; //列表        NSMutableArray *_goodsAry; //商品數組        UIButton *_editBtn; //編輯按鈕}@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];        //添加標題    UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 20, self.view.frame.size.width, 44)];    titleLabel.text = @"購物車";    titleLabel.textAlignment = NSTextAlignmentCenter;    titleLabel.backgroundColor = [UIColor redColor];    titleLabel.textColor = [UIColor whiteColor];    [self.view addSubview:titleLabel];        //添加編輯按鈕    _editBtn = [UIButton buttonWithType:UIButtonTypeCustom];    _editBtn.frame = CGRectMake(self.view.frame.size.width-60, 25, 50, 34);    [_editBtn setTitle:@"編輯" forState:UIControlStateNormal];    [_editBtn setTitle:@"完成" forState:UIControlStateSelected];    _editBtn.titleLabel.font = [UIFont systemFontOfSize:15];    _editBtn.backgroundColor = [UIColor colorWithRed:0.8 green:0.8 blue:0.8 alpha:0.5];    [self.view addSubview:_editBtn];    [_editBtn addTarget:self action:@selector(clickEditBtn:) forControlEvents:UIControlEventTouchUpInside];        //添加tableview    _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 64, self.view.frame.size.width, self.view.frame.size.height-64)];    _tableView.dataSource = self;    _tableView.delegate = self;    [self.view addSubview:_tableView];        //取數據    NSArray *ary = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"ShoppingGoodsList" ofType:@"plist"]];        //把數據存到模型對象中,然后把對象存到數組中    _goodsAry = [NSMutableArray array];    for (int i=0; i<ary.count; i++) {        Goods *good = [Goods goodsWithDic:ary[i]];        [_goodsAry addObject:good];    }}#PRagma mark 數據源  返回有幾行-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{    return _goodsAry.count;}#pragma mark 每行顯示內容-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{    static NSString *idGood = @"goods";        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:idGood];        if (cell==nil) {        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:idGood];    }        Goods *good = _goodsAry[indexPath.row];        cell.imageView.image = [UIImage imageNamed:good.icon];    cell.textLabel.text = good.name;    cell.detailTextLabel.text = good.details;    cell.detailTextLabel.numberOfLines = 6;    cell.detailTextLabel.textColor = [UIColor brownColor];        return cell;}#pragma mark 選中行-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{    // 取消選中狀態    [tableView deselectRowAtIndexPath:indexPath animated:YES];}#pragma mark 設置行高-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{    return 110;}#pragma mark 點擊編輯按鈕- (IBAction)clickEditBtn:(UIButton *)sender {        //設置tableview編輯狀態    BOOL flag = !_tableView.editing;    [_tableView setEditing:flag animated:YES];    _editBtn.selected = flag;}#pragma mark 選擇編輯模式,添加模式很少用,默認是刪除-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{    return UITableViewCellEditingStyleNone;}#pragma mark 排序 當移動了某一行時候會調用//編輯狀態下,只要實現這個方法,就能實現拖動排序-(void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath{    // 取出要拖動的模型數據    Goods *goods = _goodsAry[sourceIndexPath.row];    //刪除之前行的數據    [_goodsAry removeObject:goods];    // 插入數據到新的位置    [_goodsAry insertObject:goods atIndex:destinationIndexPath.row];}@end

 

  想要了解更多內容的小伙伴,可以點擊查看源碼,親自運行測試。

  疑問咨詢或技術交流,請加入官方QQ群:JRedu技術交流 (452379712)

 

作者:杰瑞教育
出處:http://www.49028c.com/jerehedu/ 
本文版權歸煙臺杰瑞教育科技有限公司和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品成人av性教育| 国产精品免费视频久久久| 18一19gay欧美视频网站| 日韩亚洲一区二区| 亚洲综合一区二区不卡| 亚洲人成网站免费播放| 中文字幕一区二区三区电影| 精品亚洲国产视频| 亚洲成人1234| 日韩视频免费看| 欧美性猛交xxxx乱大交蜜桃| 奇米一区二区三区四区久久| 欧美巨乳美女视频| 一区二区三区黄色| 91精品国产91久久久久久不卡| 亚洲欧美中文在线视频| 欧美黄色www| 亚洲精品98久久久久久中文字幕| 欧美激情视频给我| 一区二区欧美亚洲| 欧美大学生性色视频| 美女视频久久黄| 日韩亚洲国产中文字幕| 国产精品丝袜久久久久久高清| 日韩人体视频一二区| 亚洲美女www午夜| 国产精品日韩专区| 日韩激情视频在线播放| 热久久视久久精品18亚洲精品| 欧洲日韩成人av| 成人网址在线观看| 色综合视频一区中文字幕| 一区二区三区 在线观看视| 国产综合色香蕉精品| 亚洲一区二区三区香蕉| 亚洲精品国产精品国自产在线| 91精品国产91久久久久福利| 精品国产91久久久| 久久久精品国产一区二区| 国产免费一区二区三区香蕉精| 91av在线播放| 亚洲人精选亚洲人成在线| 日韩乱码在线视频| 国产在线一区二区三区| 国产成人免费91av在线| 永久免费看mv网站入口亚洲| 亚洲加勒比久久88色综合| 国产精品久久久久久av下载红粉| 97在线视频免费观看| 国产一区二区三区中文| 中文字幕亚洲色图| www.日韩不卡电影av| 国产在线日韩在线| 美日韩精品免费观看视频| 午夜伦理精品一区| 成人福利网站在线观看| 久久久免费观看| 亚洲精品日韩在线| 91chinesevideo永久地址| 久久久久久久国产精品视频| 国内精品久久久久| 伊人久久男人天堂| 久久久中文字幕| 日韩亚洲成人av在线| 中文字幕精品视频| 亚洲三级av在线| 高潮白浆女日韩av免费看| 亚洲韩国青草视频| 欧美野外wwwxxx| 国产91精品不卡视频| 日韩精品中文字幕在线观看| 91精品免费视频| 国产午夜精品全部视频播放| 欧美激情久久久久久| 久久国产精品视频| 久久久久久亚洲精品| 亚洲性线免费观看视频成熟| 欧美精品免费在线| 日本韩国欧美精品大片卡二| 97精品在线观看| 日韩av在线免费观看| 国产精品久久久久久网站| 亚洲人成电影在线| 色一情一乱一区二区| 国产精品女视频| 欧美日韩国产91| 欧美日韩中文字幕综合视频| 欧美大片免费观看在线观看网站推荐| 久久久国产精品免费| 98精品国产自产在线观看| 亚洲在线免费视频| 亚洲高清不卡av| 成人国产精品av| 国产精品亚洲一区二区三区| 亚洲国产女人aaa毛片在线| 亚洲国产精品va| 欧美在线www| 国外成人性视频| 日韩美女免费线视频| 狠狠色狠狠色综合日日小说| 久久久久久久一| 欧美国产日韩一区二区三区| 欧美性生活大片免费观看网址| 精品久久久久久久久久久久久久| 亚洲跨种族黑人xxx| 国产免费一区二区三区在线观看| 欧美激情综合亚洲一二区| 久久亚洲精品毛片| 日本伊人精品一区二区三区介绍| 在线看欧美日韩| 亚洲精品成人网| 欧美人在线观看| 欧美大片欧美激情性色a∨久久| 午夜免费久久久久| 亚洲第一视频网| 国产精品第10页| 国产亚洲精品久久久| 欧美一级在线亚洲天堂| 欧美乱人伦中文字幕在线| 久久综合久中文字幕青草| 亚洲人成在线电影| 国产精品电影网站| 国产精品久久av| 爱福利视频一区| 国产不卡精品视男人的天堂| 久久福利视频导航| 国产精品福利网| 亚洲视频网站在线观看| 国产亚洲精品成人av久久ww| www日韩中文字幕在线看| 日韩中文字幕免费视频| 日韩精品免费在线观看| 国产视频丨精品|在线观看| 欧美日本亚洲视频| 国产97人人超碰caoprom| 日本最新高清不卡中文字幕| 中文字幕久久久| 日韩va亚洲va欧洲va国产| 国产精品自拍小视频| 亚洲日本成人女熟在线观看| 亚洲第一中文字幕在线观看| 久久久久久久久久久人体| 亚洲欧美一区二区三区情侣bbw| 亚洲精品日韩丝袜精品| 91久久精品美女| 日韩av电影手机在线| 欧美日韩午夜剧场| 国产欧美精品在线| 欧美成人激情在线| 国产精品精品视频| 精品视频在线播放色网色视频| 亚洲精品中文字幕女同| 欧美成人午夜激情视频| 中文字幕日韩欧美精品在线观看| 久久久www成人免费精品张筱雨| 亚洲欧美精品一区二区| 国产精品美女免费视频| 国产精品久久视频| 欧美成人久久久| 2020国产精品视频| 国产精品7m视频| 在线色欧美三级视频| 欧美日韩国产精品| 2019最新中文字幕|