table設定可編輯刪除cell時,刪除最後一條資料來源不同機型閃退的問題
專案中遇到一個問題,那就是在iPhone5s上面,刪除表的最後一條資料來源會閃退,別的機型上是沒問題的
#pragma mark - 設定指定哪些cell可以被編輯
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
if (self.dataSource.count > 0) {
MyMessageModel * model = self.dataSource[indexPath.row];
if ([model.read_type isEqualToString:@"0"]) {
return NO;
}else{
return YES;
}
}
return NO;
}
現在問題就是,每次刪除資料來源的最後一條訊息時候,就是崩潰到這個 設定可編輯方法裡的
MyMessageModel * model = self.dataSource[indexPath.row];
每次reson 都是 資料越界,哪為什麼別的機型就不會csah呢?
最終是新增了一個資料的分類,解決了在 iPhone5S 機刪除閃退的問題,來貼一下程式碼,
分類 .h ------------
#import
@interface NSArray (SYFExtension)
-(id)objectAtIndexCheck:(NSInteger)index;
@end
分類 .m ------------
#import "NSArray+SYFExtension.h"
@implementation NSArray (SYFExtension)
-(id)objectAtIndexCheck:(NSInteger)index{
if (index >= [self count]) {
return nil;
}
id value = [self objectAtIndex:index];
if (value == [NSNull null]) {
return nil;
}
return value;
}
@end
在控制器設定可編輯狀態的方法裡面,把原來的
MyMessageModel * model = self.dataSource[indexPath.row];
替換成
//objectAtIndexCheck 類別新增方法
MyMessageModel * model = [self.dataSource objectAtIndexCheck:indexPath.row];
最終測試,不再會cash.
相關文章
- vue對table的某一行的資料進行編輯,刪除操作Vue
- Laravel 中利用『模型事件』來實現刪除資料時的連帶刪除Laravel模型事件
- ajax編輯資訊和刪除資訊
- whk我【資料刪除】你個【資料刪除】的
- 前端刪除多條資料,如何將多個被刪除項指定key傳給後臺前端
- 列表頁取出刪除編輯功能
- 刪除資料
- excel刪除重複資料保留一條 如何刪掉重複資料只留一條Excel
- C#刪除字串最後一個字元C#字串字元
- JavaScript刪除table表格中行JavaScript
- 聊聊PG資料庫的防誤刪除問題資料庫
- 誤刪除資料了怎麼辦?小編交易誤刪除資料的恢復方法
- mysql刪除一條記錄MySql
- 仿 iOS 列表的編輯功能 – 刪除篇iOS
- Docker定時刪除none映象DockerNone
- 刪除資料夾時顯示在另一程式開啟怎麼刪除
- MyBatisPlus解決邏輯刪除與唯一索引的相容問題MyBatis索引
- 使用Excel資料進行條件刪除Excel
- indexedDB 刪除資料Index
- 刪除elasticsearch資料Elasticsearch
- Kafka超過保留期限資料未刪除的問題Kafka
- 6.12php對資料庫的刪除和批量刪除PHP資料庫
- 一條指令徹底刪除掃描出來的有害程式
- 【DATAPUMP】Oracle資料泵定時備份刪除指令碼Oracle指令碼
- Python按條件刪除Excel表格資料的方法PythonExcel
- Oracle 刪除千萬級資料量時,可以考慮以下方法來提高刪除效率Oracle
- 全網最詳bpmn.js教材-編輯、刪除節點篇JS
- cookie的設定、獲取和刪除Cookie
- 新增、刪除PPA源
- jQuery table表格行的新增和刪除jQuery
- 如何設定cookie和刪除cookieCookie
- MybatisPlus - [05] 邏輯刪除MyBatis
- indexedDB 刪除資料庫Index資料庫
- 2.11 刪除資料庫資料庫
- CoLab刪除資料夾
- MySQL刪除資料表MySql
- 刪除重複資料
- 批次刪除WordPress文章和頁面的資料庫命令和從後臺直接刪除資料庫
- 也來談談無法刪除db link的問題