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的操作系统版本.
谢谢.
希望这将有助于任何仍在努力解决这一问题的人.我不得不在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
| 归档时间: |
|
| 查看次数: |
413 次 |
| 最近记录: |