2011-06-29 13 views
2

iPadのeBookアプリで作業しています.UIMenuControllerを使用しています。メニューコントローラのデフォルトのコピー&ペースト機能をカスタマイズしたいと思います。私は次のようにその関数のソースコードで私を助けてくださいiPadで選択、コピー/貼り付けをカスタマイズする

おかげ クナル

+1

あなたがやりたいこととこれまで行ってきたことを追加してください。あなたが正しい方向にお手伝いすることは、私たちにとってより簡単になります。ありがとう。 –

+0

こんにちはDeepak ..返事ありがとうございました。実際には、TextViewとTextFieldの任意のテキストをタップすると、選択したタップポイントでいくつかのオプションを取得します。すべてを選択し、コピーして貼り付けます。これはUIMenuControllerです。そのオプションをカスタマイズし、辞書のような別のオプションを追加する。あなたが理解できるなら、私がポーズを取ってくれたら助けてください。ありがとう –

答えて

3

派生UITextViewをカスタマイズすることはできませんよ。あなたのビューコントローラで

//MyUITextView.h 
#import <Foundation/Foundation.h> 
@interface MyUITextView : UITextView { 

} 
@end 

//MyUITextView.m 
#import "MyUITextView.h" 
@implementation MyUITextView 
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{ 
    if (action == @selector(menu1:)) 
     return YES; 

    if (action == @selector(menu2:)) 
     return YES; 

    return NO;//[super canPerformAction:action withSender:sender]; 
} 

- (void)menu1:(id)sender 
{ 
    NSLog(@"in menu1"); 
} 

- (void)menu2:(id)sender 
{ 
    NSLog(@"in menu2"); 
} 

@end 

のviewDidLoad

UIMenuItem *menu1 = [[[UIMenuItem alloc] init]autorelease]; 
menu1.title = @"MyMenu1"; 
menu1.action = @selector(menu1:); 

UIMenuItem *menu2 = [[[UIMenuItem alloc] init]autorelease]; 
menu2.title = @"MyMenu2"; 
menu2.action = @selector(menu2:); 

UIMenuController* mc = [UIMenuController sharedMenuController]; 
mc.menuItems = [NSArray arrayWithObjects: menu1, menu2, nil]; 

の下であなたはそれがペン先に、あなたはMyUITextViewの代わりに、UITextViewのオブジェクトを作成してそれを動的に作成する場合であればinterfacebuilderからあなたのTextViewにクラスを割り当てる必要があります。

上記のコードでは、テキストを選択しているときに2つのカスタムメニューが追加され、オプションを選択するとそれに応じてセレクタが起動します。

希望します。

+0

素晴らしい。私はAppleのマニュアルを読んでみたが、あまりにも一般的で、この特定のケースを理解する方法はあまり明確ではない。これは簡単なレシピです。 –

関連する問題