UICollectionViewDelegateFlowLayout में मोनो टच में sizeForItem (GetSizeForItem) नामक एक विधि है।मैं UICollectionViewController में GetSizeForItem कार्यान्वयन कैसे प्रदान कर सकता हूं?
लेकिन मैं प्रतिनिधि को स्पष्ट रूप से प्रदान नहीं कर रहा हूं- इसके बजाय, मैं UICollectionViewController से विरासत में हूं।
यह डेटा स्रोत और प्रतिनिधि कार्यक्षमता को मिश्रित करता है लेकिन इस विधि को ओवरराइड करने के लिए नहीं है।
मैं अपने नियंत्रक को यह जोड़ने की कोशिश की:
[Export ("collectionView:layout:sizeForItemAtIndexPath:")]
public virtual SizeF GetSizeForItem (UICollectionView collectionView, UICollectionViewLayout layout, NSIndexPath indexPath)
{
return new SizeF (100, 100);
}
और यह कभी कहा जाता था।
मैं प्रतिनिधि और डेटा स्रोत को अलग करने के बिना इस विधि को कैसे प्रदान करूं?
आप नहीं कर सकते हैं में इस जोड़ें। Obj-C में डेटासोर्स ऑब्जेक्ट प्रतिनिधि प्रोटोकॉल को अपना सकता है। यह मोनोटच में सकारात्मक नहीं है। – svn
@ एसवीएन: तो एकमात्र समाधान नियंत्रक से छुटकारा पाने और इसके बजाय डेटा स्रोत और प्रतिनिधि का उपयोग करना है? यदि ऐसा है, तो कृपया इसे उत्तर के रूप में पोस्ट करें ताकि मैं इसे स्वीकार कर सकूं। –
आप अपने उप-वर्गीकृत नियंत्रक के अंदर कस्टम प्रतिनिधि और डेटासोर्स को परिभाषित और असाइन कर सकते हैं। इस तरह आप अपने कस्टम कंट्रोलर का बाहरी रूप से उपयोग कर सकते हैं और आंतरिक रूप से अपने कस्टम प्रतिनिधियों का उपयोग कर सकते हैं – svn