استثناء عند حذف الصف في الجدول الافتراضي
-
20-09-2019 - |
سؤال
كلما وصلت إلى رمز الوظائف، أحصل على استثناء يخبرني أن عدد الصفوف قبل وبعد التحديث بحاجة إلى أن يكون هو نفسه. إليك النص الرسمي:
السبب: تحديث غير صالح: عدد غير صالح من الصفوف في القسم 0. يجب أن يكون عدد الصفوف الواردة في قسم موجود بعد التحديث (3) مساويا لعدد الصفوف الوارد في هذا القسم قبل التحديث (3) أو زائد أو ناقص عدد الصفوف المدرجة أو حذفها من هذا القسم (0 إدراج، تم حذف 1).
الرمز الخاص بي هو:
public override void CommitEditingStyle (UITableView tableView, UITableViewCellEditingStyle editingStyle, NSIndexPath indexPath)
{
if (editingStyle == UITableViewCellEditingStyle.Delete)
{
tableView.DeleteRows(new [] { indexPath }, UITableViewRowAnimation.Fade);
// Remove the step from the set of calculations
_calculation.Steps.RemoveAt(indexPath.Row);
}
}
المحلول
ربما تحتاج إلى تغيير الرقم الذي تم إرجاعه
- (NSInteger)tableView:(UITableView *)aTableView numberOfRowsInSection:(NSInteger)section
ل indexPath.section
أن تكون واحدة أقل من قبل الحذف.
كما أجاب هنا: حذف الصف من تعطل القيمت
نصائح أخرى
ما وجدته أنه يعمل بالنسبة لي هو إزالة الجدول الافتراضي. يجب أن تبدو طريقةك شيئا مثل هذا.
public override void CommitEditingStyle (UITableView tableView, UITableViewCellEditingStyle editingStyle, NSIndexPath indexPath)
{
if (editingStyle == UITableViewCellEditingStyle.Delete)
{
// Remove the step from the set of calculations
_calculation.Steps.RemoveAt(indexPath.Row);
tableView.reloadData();
}
}
لا تنتمي إلى StackOverflow