UICollectionViewDelegateFlowLayout ha un metodo chiamato (GetSizeForItem in MonoTouch).Come è possibile fornire l'implementazione GetSizeForItem in UICollectionViewController?
Ma non sto fornendo il delegato esplicitamente, invece, sto ereditando da UICollectionViewController.
Combina funzionalità di origine dati e delegate ma non ha questo metodo per eseguire l'override.
Ho provato ad aggiungere questo al mio controllo:
[Export ("collectionView:layout:sizeForItemAtIndexPath:")]
public virtual SizeF GetSizeForItem (UICollectionView collectionView, UICollectionViewLayout layout, NSIndexPath indexPath)
{
return new SizeF (100, 100);
}
ed è stato mai chiamato.
Come si fornisce questo metodo senza ricorrere alla separazione di delegato e origine dati?
Non è possibile. In Obj-C l'oggetto datasource può adottare il protocollo delegato. Questo non è posible in Monotouch. – svn
@svn: quindi l'unica soluzione è liberarsi del controller e utilizzare invece l'origine dati e delegare? Se questo è il caso, si prega di postarlo come risposta in modo da poterlo accettare. –
È possibile definire e assegnare all'utente delegato e origine dati personalizzati all'interno del controller sottoclasse. In questo modo puoi semplicemente usare il tuo modulo di controllo personalizzato all'esterno e utilizzare internamente i tuoi delegati personalizzati – svn