स्विफ्ट के साथ UIImage में दोहरी सीमा रेखाएं कैसे बनाएं?

Dec 04 2020

मैंने ऐसा करने के लिए स्विफ्ट में "डबल बॉर्डर" ट्रिक्स देखने की कोशिश की है। मुझे लगता है कि यह UIImage में "दोहरी सीमा" जैसा हो सकता है।

अगर आप कोड जानते हैं तो मुझे बताएं। :)

जवाब

1 AJ16 Dec 04 2020 at 14:27

आप बस एक UIView ले सकते हैं और इसके अंदर UIImageView जोड़ सकते हैं। साफ़ करने के लिए UIView का रंग साफ़ करें।

यह मैंने स्टोरीबोर्ड का उपयोग करके किया है।

  1. UIView और UIImageView को इसके अंदर जोड़ा गया है, दृश्य का रंग स्पष्ट होने के लिए सेट है और छवि दृश्य सभी पक्षों से 15 बिंदुओं पर है। कृपया अपनी आवश्यकता के अनुसार बदलें (चित्र 1 देखें)।

  2. यह दृश्य नियंत्रक कोड है (चित्र 2 देखें)।

  3. आउटपुट (चित्र 3 देखें)।

नोट : बस एक मूल विचार है, हालांकि आप अपनी आवश्यकता के अनुसार रंग और सीमा आदि को बदल सकते हैं।

स्टोरीबोर्ड लेआउट

नियंत्रक कोड देखें

उत्पादन

2 SumitJain Dec 04 2020 at 11:55

आपको UIImageView की डिफ़ॉल्ट लेयर में BorderColor (ब्लैक) और कॉर्नररेडियस को जोड़ना होगा। इसके साथ, आपको UIImageView में एक और उपलेयर को बॉर्डर के साथ ग्रे के रूप में जोड़ना होगा।

imageView.layer.borderWidth = 4.0
imageView.layer.borderColor = UIColor.gray.cgColor
imageView.layer.cornerRadius = imageView.frame.width / 2

let borderLayer = CALayer()
borderLayer.frame = imageView.bounds
borderLayer.borderColor = UIColor.black.cgColor
borderLayer.borderWidth = 14.0
borderLayer.cornerRadius = borderLayer.frame.width / 2
imageView.layer.insertSublayer(borderLayer, above: imageView.layer)

संलग्न खेल का मैदान डेमो देखें।

PeterDu Dec 04 2020 at 11:09

मुझे लगता है कि आप UIImageView और UIImage के बीच सबव्यू के रूप में 1 सर्कल (UIView) जोड़ सकते हैं। उदाहरण के लिए, आप UIImageView grayको बाहरी कोनेरेडियस के लिए रंग के साथ आरंभ कर सकते हैं । उसके बाद, आप सर्कल UIView और अंत में UIImage जोड़ें।

या, विकल्प UIVmage सर्कल UIView (पारदर्शी पृष्ठभूमि के साथ) से पहले जोड़ा जा सकता है।

मुझे लगता है कि आप यहां समान कोड पा सकते हैं: छवि देखें डबल बॉर्डर