后,所以我有这行代码:执行任务(iOS中)动画结束
[tableView setContentOffset:point animated:YES];
,我希望动画结束后运行另一段代码。我的尝试是在一个单独的方法扔动画代码(setContentOffset),并使用调用它:
[self performSelectorOnMainThread:@selector(scrollMethod:) withObject:sender waitUntilDone:YES];
的问题是,该方法将立即返回,而不是动画结束后,即使waitUntilDone是YES ,但显然这就是动画的工作原理。
我知道我可以使用线程等待,但它不干净,所以我只会用它作为最后的手段。 (也许我会用这个,如果我知道滚动动画发生的时间。)
任何关于如何去做这个的想法都是值得欢迎的。 (PS的场景是这样的:我显示了一个弹出窗口,当没有键盘时显示完美,但是,如果键盘可见,弹出窗口的高度缩小,有时会将其缩小到几乎边框。显示酥料饼之前,我要向上滚动视图,以便酥料饼从未在弹出键盘)
准备回答同样的问题...我想知道这是否会干扰tableView动画。 – SpacyRicochet
嗨@SpacyRicochet我刚刚尝试过,它也可以。 :) – Kjuly
然后,我的新答案仍然有益于教育目的:) – SpacyRicochet