[英]How to translate this Swift func to Xamarin.iOS/C#
我目前正在通過練習進行操作,希望將此Swift功能轉換為Xamarin.iOS / C#。 我會繼續努力,但是如果有人可以提供一些幫助,那將是很棒的。
func setCollectionViewDataSourceDelegate
<D: protocol<UICollectionViewDataSource, UICollectionViewDelegate>>
(dataSourceDelegate: D, forRow row: Int) {
collectionView.delegate = dataSourceDelegate
collectionView.dataSource = dataSourceDelegate
collectionView.tag = row
collectionView.reloadData()
}
我無法解決的是Swift中的方法簽名如何轉換為C#
讓我為媽媽難過的那段簽名。 是:
<D: protocol<UICollectionViewDataSource, UICollectionViewDelegate>>
上下文-表視圖的每一行都包含一個水平滾動的集合視圖。 上面的func通過willDisplayCell為tableview中的每一行調用。 例如:
override func tableView(tableView: UITableView, willDisplayCell cell:UITableViewCell,
forRowAtIndexPath indexPath: NSIndexPath) {
//code..
tableViewCell.setCollectionViewDataSourceDelegate(self, forRow: indexPath.row)
}
感謝@Alexey。 正在更新需要此信息的其他任何人。 將此方法放在自定義單元類中的效果很好(我利用了UICollectionViewDelegate / Datasource可用的接口):
public void SetCollectionViewDataSourceDelegate<T>(T dataSourceDelegate, int row) where T : IUICollectionViewDelegate, IUICollectionViewDataSource
{
collectionView.Delegate = dataSourceDelegate;
collectionView.DataSource = dataSourceDelegate;
collectionView.Tag = row;
collectionView.ReloadData ();
}
void setCollectionViewDataSourceDelegate<D>(
D dataSourceDelegate,
int row)
where D : UICollectionViewDataSource, UICollectionViewDelegate`
我不知道Xamarin Forms中的UICollectionViewDataSource, UICollectionViewDelegate
類型的等效項。 它們應該是某種接口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.