UIRefreshControl在Xamarin iOS上崩溃

Fil*_*cks 2 uitableview xamarin.ios ios xamarin

这应该不是一个问题,看看Stackoverflow上的所有答案,但我无法找到如何使用UITableView(而不是TableViewController)来做到这一点.我使用以下代码

 if (UIDevice.CurrentDevice.CheckSystemVersion(6, 0))
 {
    _refreshControl = new UIRefreshControl();
    _refreshControl.ValueChanged += OnRefreshRequested;
    ResultsTableView.RefreshControl = _refreshControl;
 }
Run Code Online (Sandbox Code Playgroud)

并注意到有一条警告说该线

ResultsTableView.RefreshControl = _refreshControl;
Run Code Online (Sandbox Code Playgroud)

仅适用于API 10及更高版本?我认为这可能是Xamarin Studios的许多怪癖之一,但是看到它实际上会在任何小于10的操作系统版本上崩溃.

NSInvalidArgumentException', reason: '-[UITableView setRefreshControl:]: 
unrecognized selector sent to instance 0x15f420c00'
Run Code Online (Sandbox Code Playgroud)

我想在我的UITableView中添加一个刷新控件以及低于10的操作系统版本.

谢谢.

Mat*_*ill 7

希望这将有助于任何仍在努力解决这一问题的人.我不得不在ViewController的顶部声明以下内容

UIRefreshControl refreshControl;
Run Code Online (Sandbox Code Playgroud)

然后我做了以下我尝试设置刷新控件的地方:

refreshControl = new UIRefreshControl(); 
refreshControl.AddTarget((sender, args) => GetData(), UIControlEvent.ValueChanged); 

if (UIDevice.CurrentDevice.CheckSystemVersion(10, 0)) 
{ 
    TableView.RefreshControl = refreshControl; 
} else { 
    TableView.AddSubview(refreshControl); 
}
Run Code Online (Sandbox Code Playgroud)

而不是引用当时RefreshControl的TableView我只是引用refreshControl