亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

UITableView的使用

發布時間:2020-06-22 05:55:48 來源:網絡 閱讀:714 作者:wodenianshao 欄目:開發技術


UITableView的使用 

    今天凌晨,蘋果召開2015年新品發布會。iPhone6siPhone6s Plus,以及iPad Pro、新Apple TV會與我們見面,據悉,iPhone 6siPhone6s Plus將會在918日正式發售。

 UITableView的使用

    表格視圖控制器,它是一個是視圖控制器的對象管理一個表視圖。

一個iphone表格由三種東西構成:一個視圖,一個數據源和一個委托。

數據源:它是用于管理可見的UITableview及其數據之間關系-UITableviewDataSource協議中的方法提供表格的區域,行數,頂部和底部的標題,以及每個單元格的內容等。其中有兩個方法必須實現:tableView:numberOfRowsInSection:tableView:cellforRowAtIndexPath:

委托:控制表格的視覺外觀和行為-UITableviewDelegate協議的對象會收到從多用戶活動的通知,如選擇一個單元格,編輯單元格等操作。通常我們需要實現tableViewdidSelectRowAtIndexpath

 

數據源方法:

//不重寫默認返回1

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{

    return 1;

}

//tableview一個區域顯示多少行

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

    return [dataSourceArray count];

}

//填充數據

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

//    addMovies = [[Movie alloc]init];

//    addMovies.movieName = avcc.Addmovies.movieName;

//    addMovies.movieMoney = avcc.Addmovies.movieMoney;

//    addMovies.movieDescription = avcc.Addmovies.movieDescription;

//    [dataSourceArray addObject:addMovies];

    static NSString* Cellidentifer = @"cell";

    //cell的重用

//    UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:Cellidentifer];

    //系統

//    addMovies.movieName = 

    MyCell* cell = [tableView dequeueReusableCellWithIdentifier:Cellidentifer];

    //自定義

    if (cell==nil) {

        //初始化一個cell

        //這里的style是一個枚舉

        cell = [[MyCell alloc]initWithStyle:0 reuseIdentifier:Cellidentifer];

        //這里是在最后面加一個->

        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    }

    

    NSLog(@"%@",[dataSourceArray objectAtIndex:indexPath.row]);

//    cell.textLabel.text = [dataSourceArray objectAtIndex:indexPath.row];

    Movie* movie = [dataSourceArray objectAtIndex:[indexPath row]];

//    NSString* strMoney = [NSString stringWithFormat:@"%d",movie.movieMoney];

    NSLog(@"%d",[indexPath row]);

    NSLog(@"%@",[dataSourceArray objectAtIndex:[indexPath row]]);

    cell.Moviep_w_picpath.p_w_picpath = [UIImage p_w_picpathNamed:movie.movieImage];

    cell.MovieMoney.text = movie.movieMoney;

    cell.MovieName.text = movie.movieName;

    cell.MovieDescription.text = movie.movieDescription;

    

    return cell;

}

 

單元格重用機制

//填充數據

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

//    addMovies = [[Movie alloc]init];

//    addMovies.movieName = avcc.Addmovies.movieName;

//    addMovies.movieMoney = avcc.Addmovies.movieMoney;

//    addMovies.movieDescription = avcc.Addmovies.movieDescription;

//    [dataSourceArray addObject:addMovies];

    static NSString* Cellidentifer = @"cell";

    //cell的重用

//    UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:Cellidentifer];

    //系統

//    addMovies.movieName = 

    MyCell* cell = [tableView dequeueReusableCellWithIdentifier:Cellidentifer];

    //自定義

    if (cell==nil) {

        //初始化一個cell

        //這里的style是一個枚舉

        cell = [[MyCell alloc]initWithStyle:0 reuseIdentifier:Cellidentifer];

        //這里是在最后面加一個->

        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    }

    

    NSLog(@"%@",[dataSourceArray objectAtIndex:indexPath.row]);

//    cell.textLabel.text = [dataSourceArray objectAtIndex:indexPath.row];

    Movie* movie = [dataSourceArray objectAtIndex:[indexPath row]];

//    NSString* strMoney = [NSString stringWithFormat:@"%d",movie.movieMoney];

    NSLog(@"%d",[indexPath row]);

    NSLog(@"%@",[dataSourceArray objectAtIndex:[indexPath row]]);

    cell.Moviep_w_picpath.p_w_picpath = [UIImage p_w_picpathNamed:movie.movieImage];

    cell.MovieMoney.text = movie.movieMoney;

    cell.MovieName.text = movie.movieName;

    cell.MovieDescription.text = movie.movieDescription;

    

    return cell;

}

UITableView中顯示的每一個單元都是一個UITableview對象,它的初始化函數initWithStylereuseIdentifier:比較特別,跟我們平時看到的UIView的初始化函數不同。這個主要是為了效率考慮,因為在tableview快速滑動的過程中,頻繁的alloc對象是比較費時的,于是引入cell的重用機制,這個也是我們在打他source中要重點注意的地方,用好重用機制會讓我們的tableView滑動起來更加流暢。

 

static NSString* Cellidentifer = @"cell";

定義一個靜態字符串常量,用于指定cell的標示符.

UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:Cellidentifer];

從表格視圖中獲取帶標示符的空閑(未顯示)的cell,如果有則獲得cell,否則cellnil

if (cell==nil) {

        //初始化一個cell

        //這里的style是一個枚舉

        cell = [[MyCell alloc]initWithStyle:0 reuseIdentifier:Cellidentifer];

        //這里是在最后面加一個->

        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    }

如果從表格視圖中獲取不到可用的cell,則alloc出一個新的cell,并設置標示符。

 

UITableViewCell

單元格顯示類型:

typedef enum{

UITableViewStyleDefault;       à0

UITableViewCellStyleValue1;    à1

UITableViewcellStyleValue2;    à2

UITableViewCellStyleSubtitle;  à3

}



UITableView的使用

UITableView的使用

 

 

 

單元格的輔助圖標類型

  //這里是在最后面加一個->

        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

 

UITableView的使用

UITableView的使用


 

 

編輯單元格(增,刪,移動)

1. 設置tableview的編輯模式:

 

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用


 

 

 

 

 

選中單元格—>進入二級視圖進行修改信息

 

UITableView的使用

UITableView的使用

 

 

更新單元格內容

UITableView的使用

UITableView的使用

 

 

 

 

 

 

需要先引入協議

 

UITableView的使用

UITableView的使用

 

 

 

分段按鈕實現

 

 

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用


 

 

 

 

 

 

自定義單元格

 

 

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用

UITableView的使用


 

 

UITableView的使用

UITableView的使用


 

 

 

 

 

 

 

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

景洪市| 沽源县| 长垣县| 海淀区| 阳信县| 绥宁县| 桐庐县| 白山市| 施秉县| 汝阳县| 阳高县| 比如县| 鄂伦春自治旗| 洞口县| 成武县| 高清| 邵武市| 罗田县| 思茅市| 张家川| 洛川县| 忻州市| 修水县| 辉县市| 淮阳县| 肥东县| 安徽省| 肇东市| 吉木乃县| 道真| 遵义县| 炎陵县| 萍乡市| 库伦旗| 鸡泽县| 吉隆县| 邵武市| 静宁县| 内乡县| 英吉沙县| 南城县|