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

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

ios之UITableViewController(二)tableView的編輯模式

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

tableView的編輯模式

   表視圖可以進入編輯模式,當進入編輯模式就可以進行刪除、插入、移動單元等操作

  效果圖:

  

   讓表視圖進入編輯模式,進入編輯模式的方法有兩種,一種是使用導航欄的edit 

     按鈕,另一種是設置tableView的editing屬性進入編輯模式。

     最后通過實現UITableViewDataSource協議的方法實現單元格的刪除、插入和移動

 

1,在viewDidLoad方法里面指定導航欄的右按鈕為edit按鈕

  self.navigationItem.rightBarButtonItem =self.editButtonItem;

 

 2,另一種進入編輯模式的方式是修改tableView的editing屬性

  該屬性是一個BOOL類型,默認值是NO,這里給導航欄添加一個左按鈕,通過點擊左按鈕修改editing屬性的值

   進入和退出編輯模式

 

- (void)editTableView:(UIBarButtonItem *)button

 {

  //修改editing屬性的值,進入或退出編輯模式

      [self.tableView setEditing:!self.tableView.editinganimated:YES];

   if(self.tableView.editing){

   button.title = @"完成";

   }

  else{

   button.title = @"編輯";

     }

}

 

 

實現刪除和插入行

  兩方法一響應

方法一:那些行進入編輯模式

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath

{

    return YES;

}

 

方法二:進入編輯模式的cell是刪除還是增加

-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath

{

    return UITableViewCellEditingStyleDelete;

}

 

注意:這個方法里一般返回兩種類型,還有一中默認類型

刪除:UITableViewCellEditingStyleDelete

增加:UITableViewCellEditingStyleInsert

 

響應:點擊當點擊delete后執行的刪除過程

-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

{

  //刪除數據源里的數據

  [self.array removeObjectAtIndex:indexPath.row];

  //再刪除tableView中對應的行

     [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];

}

注意:先除數據源里的數據,刪除tableView中對應的行

 

 

實現移動行

  當tableView進入編輯模式之后,默認每一行都是可以移動,每一行尾部有一個圖標

  為三行灰色橫線的按鈕,就是表示該行可以移動

 一方法一響應

 

方法一:那些cell可以移動

-(BOOL)tableView:(UITableView *)tableView

canMoveRowAtIndexPath:(NSIndexPath *)indexPath

{

    return YES;

}

 

響應:移動的具體操作

- (void)tableView:(UITableView *)tableView

moveRowAtIndexPath:(NSIndexPath *)fromIndexPath

      toIndexPath:(NSIndexPath *)toIndexPath

{

    TRStudent *stu=self.array[fromIndexPath.row];

    [self.array removeObjectAtIndex:fromIndexPath.row];

    [self.array insertObject:stuatIndex:toIndexPath.row];

}

 

 

案例

AppDelegate.h

#import <UIKit/UIKit.h>

@interface AppDelegate : UIResponder <UIapplicationDelegate>

@

@interface TRTableViewController ()

@end

@implementation TRTableViewController

-(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

{

    return self=[super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

}

 

- (void)viewDidLoad

{

    [super viewDidLoad];

    

    self.array=[TRStudent getarray];

    self.navigationItem.rightBarButtonItem=self.editButtonItem;

  }

 

 

//有多少分區

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

    return 1;

}

 

//有多少個cell單元

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

    return self.array.count;

}

 

//cell單元

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];

    if(cell==nil)

    {

        cell=[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cell"];

    }

    TRStudent *stu=self.array[indexPath.row];

    cell.textLabel.text=stu.name;

    return cell;

}

 

 

//那些行進入編輯模式,根據你的需求自行設置,我這里設置的全部

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath

{

    

    return YES;

}

 

//進入編輯模式的cell是刪除還是增加

//自行設置,我這里設置的是最后一個cell單元是增加,其他是刪除

-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView

          editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath

{

    if(indexPath.row==self.array.count-1)

        return UITableViewCellEditingStyleInsert;

    return UITableViewCellEditingStyleDelete;

}

 

//點擊當點擊delete后執行的刪除增加過程

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

{

    if (editingStyle == UITableViewCellEditingStyleDelete) {

        

            [self.array removeObjectAtIndex:indexPath.row];

        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];

    } else if (editingStyle == UITableViewCellEditingStyleInsert) {

        

        TRStudent *str2=[[TRStudent alloc] init];

        str2.name=@"qwer";

        str2.name=@"124456";

        [self.array addObject:str2];

        NSIndexPath *insetindexpath=[NSIndexPath indexPathForRow:self.array.count-1 inSection:0];

        [tableView insertRowsAtIndexPaths:@[insetindexpath] withRowAnimation:UITableViewRowAnimationAutomatic];

        

    }

}

//那些cell可移動

-(BOOL)tableView:(UITableView *)tableView

canMoveRowAtIndexPath:(NSIndexPath *)indexPath

{

    return YES;

}

 

//移動

- (void)tableView:(UITableView *)tableView

moveRowAtIndexPath:(NSIndexPath *)fromIndexPath

      toIndexPath:(NSIndexPath *)toIndexPath

{

    TRStudent *stu=self.array[fromIndexPath.row];

    [self.array removeObjectAtIndex:fromIndexPath.row];

    [self.array insertObject:stuatIndex:toIndexPath.row];

     }

 

@end

 

 

 

TRStudent.h

#import <Foundation/Foundation.h>

 @interface TRStudent : NSObject

@property(nonatomic,strong) NSString *name;

@property(nonatomic,strong) NSString *phone;

+(NSMutableArray *)getarray;

@end

 

TRStudent.m

#import "TRStudent.h"

@implementation TRStudent

+(NSMutableArray *)getarray

{

    TRStudent *stu1=[[TRStudent alloc] init];

    stu1.name=@"q";

    stu1.phone=@"12345";

    TRStudent *stu2=[[TRStudent alloc] init];

    stu2.name=@"QQw";

    stu2.phone=@"12345";

    TRStudent *stu3=[[TRStudent alloc] init];

    stu3.name=@"sdsq";

    stu3.phone=@"12345";

    NSMutableArray *mut=[[NSMutableArray alloc] init];

    [mut addObject:stu1];

    [mut addObject:stu2];

    [mut addObject:stu3];

    return mut;

}

@end

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美国产精品| 亚洲免费人成在线视频观看| 日韩在线一区二区三区免费视频| 亚洲精品视频播放| 国内精品视频在线| 在线看欧美日韩| 亚洲在线观看视频| 操人视频在线观看欧美| 欧美插天视频在线播放| 亚洲高清免费观看高清完整版| 国产成人精品av在线| 这里只有视频精品| 日韩av影视在线| 日韩女优在线播放| 欧美激情一级欧美精品| 欧美高清视频在线观看| 在线观看欧美日韩国产| 午夜精品久久久久久久99黑人| 国产日韩在线亚洲字幕中文| 亚洲精品国产综合久久| 亚洲sss综合天堂久久| 欧美在线不卡区| 国产一区二区av| 国产精品爽黄69天堂a| 欧美日韩视频免费播放| 亚洲jizzjizz日本少妇| 亚洲精品美女视频| 亚洲第一男人av| 精品久久久久久亚洲精品| 日韩av网址在线| 亚洲欧洲中文天堂| 欧美激情一区二区三区久久久| 欧美不卡视频一区发布| 国产精品美女主播| 国产亚洲精品久久久久动| 欧美激情第99页| 欧美黄色成人网| 亚洲毛片在线观看.| 丝袜亚洲欧美日韩综合| xxxxxxxxx欧美| 久久久精品国产亚洲| xxxxx成人.com| 在线看日韩欧美| 国产在线精品播放| 亚洲电影免费观看高清完整版| 狠狠躁夜夜躁久久躁别揉| 青草热久免费精品视频| 91sa在线看| 欧美精品videosex极品1| 色婷婷久久av| 亚洲奶大毛多的老太婆| 啪一啪鲁一鲁2019在线视频| 色yeye香蕉凹凸一区二区av| 国产主播喷水一区二区| 91免费精品视频| 欧美在线激情视频| 中文字幕日韩电影| 久久综合久中文字幕青草| 中文字幕欧美精品在线| 亚洲国产精品高清久久久| 欧美亚洲一级片| 亚洲视频在线免费观看| 一区国产精品视频| 热re91久久精品国99热蜜臀| 亚洲经典中文字幕| 97欧美精品一区二区三区| 欧美影院在线播放| 中文欧美在线视频| 国产精品入口夜色视频大尺度| 亚洲视频在线观看免费| 青青草原成人在线视频| 久久精品视频一| 精品成人乱色一区二区| 青青草原成人在线视频| 成人黄色中文字幕| 欧美剧在线观看| 国产极品jizzhd欧美| 国产精品久久久久久久久久久久| 日韩欧美成人网| 国产成人精品久久二区二区91| 日韩成人在线视频| 国产精品wwwwww| 国产精品国内视频| 成人黄色激情网| 日韩h在线观看| 亚洲大尺度美女在线| 亚洲视频在线观看| 亚洲欧美中文在线视频| 亚洲国产小视频在线观看| 精品国产区一区二区三区在线观看| 国产亚洲精品美女久久久久| 亚洲激情视频在线| 国产成人aa精品一区在线播放| 中文字幕日韩精品在线观看| 国产精品h在线观看| 538国产精品一区二区在线| 国产精品入口福利| 91久久久久久久一区二区| 久久视频精品在线| 精品久久久中文| 欧美日韩ab片| 国产精品美乳一区二区免费| 欧美又大又粗又长| 欧美成人自拍视频| 亚洲精品成人免费| 国产精品ⅴa在线观看h| 国产精品电影一区| 4p变态网欧美系列| 国产日韩精品在线播放| 国产极品精品在线观看| 久久久久日韩精品久久久男男| 日韩高清a**址| 91地址最新发布| 一区二区av在线| 亚洲精品久久久久中文字幕二区| 在线视频日本亚洲性| 91在线高清视频| 日韩免费av在线| 91久久国产精品91久久性色| 亚洲精品视频二区| 亚洲欧美福利视频| 欧洲成人免费aa| 精品久久久久人成| 国产精品久久久久国产a级| 中文字幕久热精品在线视频| 欧美肥老妇视频| 国产精品爽黄69| 久久全球大尺度高清视频| 91精品国产综合久久久久久蜜臀| 中文字幕国产精品久久| 日韩小视频在线观看| 神马国产精品影院av| 国产成人精品日本亚洲| 国产欧美精品在线| 98精品国产自产在线观看| 91久久久在线| 97热在线精品视频在线观看| 欧美日韩性视频| 亚洲国产精品女人久久久| 欧美一区二区三区……| 亚洲性生活视频在线观看| 超碰精品一区二区三区乱码| 亚洲人成啪啪网站| 国产日韩中文字幕| 久久亚洲电影天堂| 亚洲精品91美女久久久久久久| 国产精品第2页| 在线中文字幕日韩| 欧美激情视频在线观看| 亚洲成人精品视频| 亚洲精品一区二三区不卡| 国产亚洲精品美女久久久| 日韩在线观看网站| 成人国产精品久久久| 久久精品最新地址| 欧美午夜片在线免费观看| 日韩精品中文字幕在线播放| 中文字幕在线看视频国产欧美| www.亚洲男人天堂| 日韩精品有码在线观看| 日韩美女免费线视频| 日韩美女视频在线观看| 国产suv精品一区二区| 亚洲国产精品女人久久久|