मैं आईओएस, स्विफ्ट में एक प्रोजेक्ट पर काम कर रहा हूं। हम दो अलग-अलग प्रवाह लेआउट के साथ एक संग्रह दृश्य कैसे असाइन कर सकते हैं? यहां मुझे स्टैक-कार्ड की तरह दिखने के लिए अपने UICollectionViewCell की आवश्यकता है, इसके लिए, मैं CardsCollectionViewLayout (बाहरी पॉड फ़ाइल) का उपयोग कर रहा हूं।
myCollectionView.collectionViewLayout = CardsCollectionViewLayout()
और यह ठीक काम कर रहा है। लेकिन मुद्दा यह है कि मैं डिवाइस की चौड़ाई के साथ UICollectionViewCell चौड़ाई को समायोजित नहीं कर सकता। उसके लिए, मुझे UICollectionViewDelegateFlowLayout का उपयोग करने की आवश्यकता है।
func collectionView(_ collectionView: UICollectionView,
layout collectionViewLayout: UICollectionViewLayout,
sizeForItemAt indexPath: IndexPath) -> CGSize {
let nCol = 1
let flowLayout = collectionViewLayout as! UICollectionViewFlowLayout
let totalSpace = flowLayout.sectionInset.left
+ flowLayout.sectionInset.right
+ (flowLayout.minimumInteritemSpacing * CGFloat(nbCol - 1))
let size = Int((collectionView.bounds.width - totalSpace) / CGFloat(nbCol))
return CGSize(width: size, height: 284)
}
लेकिन जब मैं अपने संग्रह दृश्य लेआउट के रूप में CardsCollectionViewLayout का उपयोग करता हूं, तो मुझे उपरोक्त विधि में कॉल वापस नहीं मिला।
या
क्या मेरे UICollectionViewCell के साथ स्टैक-कार्ड प्रभाव जोड़ने का कोई तरीका है।
क्रिप्या मेरि सहायता करे।
1 उत्तर
आप इसे गलत संभावना से देख रहे हैं, यदि आप CardsCollectionViewLayout
का उपयोग करते हैं तो आपको इसे बदलने के लिए उस लेआउट द्वारा प्रदान किए गए फ़ंक्शन का उपयोग करना होगा। CardsCollectionViewLayout
में itemSize
नाम की एक प्रॉपर्टी है, जिसे आप कार्ड के आकार को निर्धारित करने के लिए सेट कर सकते हैं:
let layout = CardsCollectionViewLayout()
collectionView.collectionViewLayout = layout
layout.itemSize = CGSize(width: YOUR_WIDTH, height: YOUR_HEIGHT)
collectionView.dataSource = self
collectionView.delegate = self
collectionView.isPagingEnabled = true
collectionView.showsHorizontalScrollIndicator = false
संबंधित सवाल
नए सवाल
ios
iOS, Apple iPhone, iPod टच और iPad पर चलने वाला मोबाइल ऑपरेटिंग सिस्टम है। IOS प्लेटफॉर्म पर प्रोग्रामिंग से संबंधित प्रश्नों के लिए इस टैग [ios] का उपयोग करें। उन प्रोग्रामिंग भाषाओं के लिए विशिष्ट मुद्दों के लिए संबंधित टैग [उद्देश्य-सी] और [स्विफ्ट] का उपयोग करें।