2009-10-07 11 views
6

iPhoto में, मैं बस "प्रतिलिपि" पॉपअप प्राप्त करने के लिए एक छवि पर अपनी उंगली पकड़ सकता हूं (जैसे आप टेक्स्ट बॉक्स में देखे गए पॉपअप)।UIImage पर दिखाई देने के लिए मैं मानक आईफोन कॉपी बबल कैसे प्राप्त कर सकता हूं?

मेरे UIImageView में, यह मामला नहीं है। मैं इसे कैसे सक्षम कर सकता हूं?

उत्तर

16

आप UIMenuController class का उपयोग कर कट/कॉपी/पेस्ट मेनू मैन्युअल रूप से प्रदर्शित कर सकते हैं।

[self becomeFirstResponder]; 

UIMenuController *copyMenuController = [UIMenuController sharedMenuController]; 

[copyMenuController setTargetRect:image.frame inView:self.view]; 
[copyMenuController setMenuVisible:YES animated:YES]; 

यह मानता है कि आप का मानना ​​है कि अपनी छवि को होस्ट करता है के लिए एक UIViewController में इस कोड को लागू करने दिया जाएगा: उदाहरण के लिए, निम्न कोड मेनू, अपनी छवि पर केंद्रित प्रदर्शित करेगा।

विभिन्न मेनू आइटम को सक्षम करने के आप भी अपने नियंत्रक में कुछ प्रतिनिधि तरीकों को लागू करने की आवश्यकता होगी:

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{ 
    if (action == @selector(cut:)) 
     return NO; 
    else if (action == @selector(copy:)) 
     return YES; 
    else if (action == @selector(paste:)) 
     return NO; 
    else if (action == @selector(select:) || action == @selector(selectAll:)) 
     return NO; 
    else 
     return [super canPerformAction:action withSender:sender]; 
} 

- (BOOL)canBecomeFirstResponder 
{ 
    return YES; 
} 

इस मामले में, केवल कॉपी मेनू विकल्प सक्षम हो जाएगा। उपयोगकर्ता को उस मेनू आइटम का चयन करते समय क्या होता है, इसे संभालने के लिए आपको उपयुक्त-कॉपी: विधि को लागू करने की भी आवश्यकता होगी।

संबंधित मुद्दे

 संबंधित मुद्दे