Ios UIScrollView内部的UITableView不会触发ScrollToRow
我创建了一个UITableView并将其添加到UIScrollView容器中。 在页面顶部,我显示了一个地图,我想在用户每次单击地图上的标记时触发ScrollToRow行为。 调用此函数的方法是:Ios UIScrollView内部的UITableView不会触发ScrollToRow,ios,objective-c,swift,xamarin.ios,mvvmcross,Ios,Objective C,Swift,Xamarin.ios,Mvvmcross,我创建了一个UITableView并将其添加到UIScrollView容器中。 在页面顶部,我显示了一个地图,我想在用户每次单击地图上的标记时触发ScrollToRow行为。 调用此函数的方法是: private void OnMarkerClick(MapView mapView, Marker marker) { var markerLocation = marker.Title; if (!IsNullOrEmpty(mar
private void OnMarkerClick(MapView mapView, Marker marker)
{
var markerLocation = marker.Title;
if (!IsNullOrEmpty(markerLocation))
{
var index = ViewModel.Items.IndexOf(ViewModel.Items.FirstOrDefault(x => x.IsSelected));
var indexPath = NSIndexPath.FromRowSection(index, 0);
DispatchQueue.GetGlobalQueue(DispatchQueuePriority.High).DispatchAsync(() =>
{
DispatchQueue.MainQueue.DispatchAsync(() =>
{
_tableView.ReloadData();
_tableView.ScrollToRow(indexPath, UITableViewScrollPosition.Middle, true);
_tableView.LayoutIfNeeded();
});
});
}
}
已正确获取所选项目的索引,只有滚动行为不起作用。
你知道为什么不会发生这种情况吗?我想你不需要重新加载数据和布局需要不要将tableview放在滚动视图中,并删除重新加载的数据和布局需要。