आप अपनी पुस्तक (या किसी भी UIView) देखने की परत संपत्ति का उपयोग करते हैं तो आप आसानी से एक ठोस सीमा प्राप्त कर सकते हैं ...
#import <QuartzCore/QuartzCore.h>
...
myView.layer.borderWidth = 2;
myView.layer.borderColor = [UIColor blackColor].CGColor;
तुम भी परत का उपयोग कर सकते स्थापना द्वारा वास्तविक समय छाया लागू करने के लिए layer.shadow*
गुण, लेकिन इस तकनीक के साथ प्रदर्शन धीमा हो सकता है, इसलिए मैं आमतौर पर निम्नलिखित जटिल, लेकिन अधिक प्रदर्शन तकनीक का उपयोग करना पसंद करता हूं। आप बीच में पारदर्शीता और किनारे के चारों ओर छाया के साथ एक पीएनजी छवि बना सकते हैं - इसमें 9 अलग-अलग क्षेत्र होने चाहिए: प्रत्येक कोने के लिए 4, प्रत्येक किनारे के लिए 4, और बीच में एक पूरी तरह से पारदर्शी 1x1 पिक्सेल क्षेत्र होना चाहिए। उदाहरण के लिए यदि आपकी छाया आपकी छवि में 6 पिक्सल तक फैली हुई है, तो आपकी छवि 6x पिक्सेल चौड़ी/ऊंची सीमाओं और बीच में 1x1 क्षेत्र के साथ 13x13 होगी। तो फिर तुम का उपयोग कर एक स्केलेबल छवि के रूप में सेट:
newImage = [image stretchableImageWithLeftCapWidth:6 topCapHeight:6];
अद्यतन: iOS 5.0 के बाद से stretchableImageWithLeftCapWidth:topCapHeight:
तो केवल इस का उपयोग करता है, तो आप अभी भी आईओएस 4.x उपकरणों का समर्थन करना चाहते मान्य नहीं है। आप समर्थन करना चाहते हैं केवल iOS 5.0+ डिवाइस इस बजाय का उपयोग करें:
newImage = [image resizableImageWithCapInsets:UIEdgeInsetsMake(6, 6, 6, 6)];
तो फिर तुम तो यह पुस्तक को देखने के पूरे क्षेत्र तक ले जाता है जनक दृश्य पर छवि डाल दिया। यदि आप छाया को अपने स्क्रॉल करने योग्य तत्वों पर जाने के लिए चाहते हैं, (इसलिए आपका स्क्रॉल व्यू शेष पृष्ठ के पीछे इन्सेट/पीछे दिखता है) तो उस पर छाया छवि के साथ शीर्ष पर एक पारदर्शी UIView रखें ताकि यह आपके स्क्रॉल व्यू के माध्यम से दिखाई दे इसके पीछे।
भयानक, यह मेरे लिए अच्छी तरह से चाल है :) –