विचार प्रगति संवाद दिखाने के लिए है। मैं एक पारदर्शी काला दृश्य (अल्फा 0.2) के साथ एक मूल दृश्य (आमतौर पर पूरी स्क्रीन) को कवर करने का प्रयास कर रहा हूं। इसके ऊपर मैं एक छोटा सा दृश्य दिखाना चाहता हूं, एक और रंग के साथ पारदर्शी भी दिखाना चाहता हूं। यह पहले दृश्य की रंग या पारदर्शिता से प्रभावित नहीं हो सकता है। उस दूसरे दृश्य में मैं यूआई तत्व चाहता हूं जो अपारदर्शी हैं। मैंने सब कुछ करने की कोशिश की है और यहां तक कि यहां पोस्ट भी मिली हैं जो कुछ समान से निपटती हैं लेकिन केवल एक पारदर्शी परत का उपयोग करती हैं। और वे पहले से ही अजीब चाल का उपयोग करते हैं। क्या यह प्राप्त करने का एक मानक, आसान तरीका है?गैर पारदर्शी सामग्री के साथ एक और पारदर्शी UIView पर पारदर्शी दृश्य?
उत्तर
मैं एक ब्लॉग में एक जवाब मिला: http://cocoawithlove.com/2009/04/showing-message-over-iphone-keyboard.html
समाधान drawRect:
ओवरराइड और उस में अल्फा का ख्याल रखना है। आप UIView's
अल्फा संपत्ति को स्पर्श नहीं कर सकते हैं, न ही आप दृश्य के पृष्ठभूमि रंग को पारदर्शी लेकिन कुछ भी सेट कर सकते हैं। सभी ड्राइंग drawRect:.
में बनाई जानी चाहिए इस तरह मैं पारदर्शी विचारों को ढेर करने और शीर्ष पर अपारदर्शी तत्व डालने में सक्षम था।
पारदर्शी दृश्य के सबव्यूव के रूप में अपना अपारदर्शी दृश्य जोड़ना काम नहीं करेगा। मैंने अतीत में जो किया है, उसके पास UIView
वर्ग है जो अर्ध-पारदर्शी सबव्यू और एक अपारदर्शी सबव्यू जोड़ता है। इस तरह पारदर्शी दृश्य अपारदर्शी को प्रभावित नहीं करेगा।
किसी भी चारों ओर हैकिंग या जटिल और संभवतः धीमी गति से कस्टम drawRect:
के बिना, यह संभव है यदि आप समूह अपने विचार:
बाउंडिंग राय यह है कि शामिल हैं और पूरे संवाद रखती है बनाएँ। इस दृश्य में स्वयं कोई दृश्य सामग्री नहीं है, और इसकी पृष्ठभूमि रंग स्पष्ट है। इसका अल्फा 1.0 है।
अब सभी पारदर्शी विचार जोड़ें (अल्फा < 1 वाले) जो आप चाहते हैं, और गैर-पारदर्शी दृश्य भी जोड़ें। सावधान रहें कि पारदर्शी लोगों के सबव्यूज़ के रूप में कोई भी पारदर्शी विचार न जोड़ना, इसके बजाय उन्हें बाध्यकारी दृश्य के प्रत्यक्ष सबव्यू के रूप में जोड़ें। इस तरह, वे 1.0 के अल्फा का उत्तराधिकारी होंगे।
UIView *progressDialogView = [[UIView alloc] initWithFrame:dialogFrame];
progressDialogView.backgroundColor = [UIColor clearColor];
progressDialogView.alpha = 1.0; //you can leave this line out, since this is the default.
UIView *halfTransparentBackgroundView = [[UIView alloc] initWithFrame:dialogFrame];
halfTransparentBackgroundView.backgroundColor = [UIColor blackColor]; //or whatever...
halfTransparentBackgroundView.alpha = 0.5;
[progressDialogView addSubview: halfTransparentBackgroundView];
UIView *progressBarView = [[UIView alloc] initWithFrame:progressBarFrame];
progressBarView.backgroundColor = [UIColor blueColor];
[progressDialogView addSubview: progressBarView];
इसके बजाय अल्फा संपत्ति की स्थापना की, प्रत्येक दृश्य के लिए पृष्ठभूमि रंग/अस्पष्टता की स्थापना के लिए निम्नलिखित का उपयोग करें:
view1.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:.3];
उपयोग जो कुछ भी आप लाल, हरे, नीले, और अल्फा के लिए इच्छा महत्व देता है।
मुझे किसी अन्य दृश्य के शीर्ष पर पारदर्शी दृश्य होना आवश्यक था। दृश्य पारदर्शी मैं बस किया था बनाने के लिए:
self.alpha = 0.5;
उदाहरण के लिए:
- (void) configureView
{
self.frame = CGRectMake(0, 0, 640, 960);
self.backgroundColor = [UIColor greyColor];
self.alpha = 0.5;
}
- 1. आईफोन एसडीके: पारदर्शी दृश्य में गैर-पारदर्शी सबव्यू
- 2. UIView पारदर्शी ढाल
- 3. आईफोन: UIView के शीर्ष पर एक पारदर्शी ओपनजीएल दृश्य लेयरिंग?
- 4. गैर पारदर्शी पिक्सेल
- 5. गैर-पारदर्शी पिक्सेल सफेद
- 6. सामग्री (टेक्स्ट और छवियों) को रखने के दौरान क्रॉस ब्राउज़र आरजीबीए पारदर्शी पृष्ठभूमि गैर-पारदर्शी
- 7. पारदर्शी
- 8. मैं पारदर्शी विंडो में पारदर्शी डायरेक्टएक्स सामग्री कैसे आकर्षित करूं?
- 9. पारदर्शी UINavigationBar
- 10. गैर पारदर्शी बच्चों के साथ एक पारदर्शी फलक कैसे कार्यान्वित करें?
- 11. पारदर्शी UITextView
- 12. पारदर्शी यूआईपीओवर
- 13. HTTPWebRequest.GetResponse() एक पारदर्शी प्रॉक्सी
- 14. जीडीआई के साथ एक पारदर्शी बिटमैप बनाना?
- 15. नियंत्रण पारदर्शी
- 16. पारदर्शी डेटाबेस
- 17. पारदर्शी थीम के साथ मुद्दे
- 18. पारदर्शी जेपीनेल
- 19. एक पारदर्शी बीच
- 20. एक पारदर्शी प्रॉक्सी
- 21. आईफोन: पारदर्शी UIScrollView
- 22. एक पारदर्शी पैनल बनाना
- 23. एक पारदर्शी .NET फॉर्म
- 24. पारदर्शी UIView में छाया कैसे जोड़ें?
- 25. एक छवि पारदर्शी
- 26. पारदर्शी GPUImageView?
- 27. पारदर्शी जेबटन
- 28. एक पारदर्शी .png
- 29. पारदर्शी पृष्ठभूमि
- 30. बिटमैप पारदर्शी
मुझे पता है कि "चाल"। लेकिन यदि आप अधिक पारदर्शी दृश्य के शीर्ष पर अर्द्ध पारदर्शी दृश्य और अपारदर्शी सभी के शीर्ष पर बटन चाहते हैं तो यह मुश्किल हो जाता है। इसलिए मैं उस ब्लॉग में मिले कोड से खुश हूं जिसे मैंने अपने उत्तर में संदर्भित किया था। यह अल्फा मान का बिल्कुल उपयोग नहीं करता है। – Krumelur
यह जटिल कैसे हो जाता है? मुझे लगता है कि इस तरह यह बहुत साफ और समझने में आसान रहता है। – fzwo
इस तरह से जटिल है कि आपको हमेशा शीर्ष पर गैर-पारदर्शी सामग्री वाले एक पारदर्शी होने के लिए दो विचारों की आवश्यकता होगी। यही कारण है कि मैं अन्य समाधान पसंद करते हैं। – Krumelur