UItextview からキーボードを辞任したい。UItextView デリゲート メソッドをプログラムで実装する方法。
4 に答える
6
リターンをクリックしたときにキーボードを辞任させたい場合は、このメソッドを実装する必要があります....
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
コピーして貼り付けるだけです....:)
于 2012-03-16T13:07:35.930 に答える
5
UITextViewDelegate
プロトコルのサポートを宣言していることを確認してください。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
于 2012-03-16T12:37:07.590 に答える
4
ユーザーがいつ「RETURN」を押したかを知るためのUITextviewの特定のデリゲートメソッドはありません。したがって、このようにすることができます
//In .h File
@interface BlahBlah : UIViewController <UITextViewDelegate>
@property(nonatomic, retain) IBOutlet UITextView *myTextView;
@end
//In .m File
@implementation BlahBlah
@synthesis myTextView;
//In some method, can be viewDidLoad OR viewDidAppear . your convenience ;)
{
self.myTextView.delegate = self;
}
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
于 2012-03-16T12:32:33.923 に答える
4
UITextViewDelegate を使用する必要があります。次のように、クラス ヘッダーでプロトコルの使用を宣言する必要があります。
@interface YourClass:NSObject<UITextViewDelegate>
次に、.m で、次のような方法でクラスをデリゲートとして設定する必要があります。
textView.delegate = self;
次に、.m にデリゲート メソッドを実装する必要があります。具体的には、次のとおりです。
textViewDidChange:
詳細については、 http://developer.apple.com/library/ios/#documentation/uikit/reference/UITextViewDelegate_Protocol/Reference/UITextViewDelegate.htmlのプロトコル リファレンスを参照してください。
于 2012-03-16T12:28:59.117 に答える