只是想知道在添加/删除部分中的元素时是否可以在部分中没有动画。或者甚至在添加/删除部分本身时。
在ViewWillAppear上,我检查一个全局布尔值,看看该应用程序是否已退出/重新打开。这将导致它重新加载新数据。 (确实设置了RefreshRequested,但客户端想要这样做)。因此,在ViewWillAppear上,我们调用一个名为UpdateCells的函数,它执行以下操作。
// Using Bottom animation as its the closest to none (none has no fade effects
// but makes solid cells move upwards in the TableView and then suddenly disappear)
Root.Remove(mySection1, UITableViewRowAnimation.Bottom);
Root.Remove(mySection2, UITableViewRowAnimation.Bottom);
mySection1.Clear();
mySection2.Clear();
// Load stuff from SQLite DB and populate sections. Adding looks like:
// if (isThisWeek)
// {
// section1.Insert(0, UITableViewRowAnimation.None, newElement);
// }
// else
// {
// section2.Insert(0. UITableViewRowAnimation.None, newElement);
// }
// Now finally add sections back into Root if there exists elements in them.
if (sectionThisWeek.Count > 0)
{
Root.Insert(1, UITableViewRowAnimation.None, sectionThisWeek);
}
if (sectionCommingUp.Count > 0)
{
Root.Insert(1, UITableViewRowAnimation.None, sectionCommingUp);
}
我希望某种方式,暂停DialogViewController中的所有内容,对其进行处理,然后执行一个没有动画的ReloadComplete()......不知怎的......
任何想法我做错了什么,或者做出我想做的更好的方法。
答案 0 :(得分:1)
如果要一次重新加载所有数据,只需将整个新值分配给DialogViewController上的Root属性,就不会显示动画。