...トリックを行うようです。 self.addField.returnKeyType = UIReturnKeySearch;
や、returnKeyTypeとして設定したいものをインポートして実行します。また、キーボードがすでに開いているときに動的に使用することもできます。自動的に更新されます。
ここでは、次のとおりです。
インタフェース:
/*
Simple hack for exposing returnKeyType for UISearchBar without private APIs
For you from CodeBuffet ;)
Enjoy!
~PW
*/
#import <UIKit/UIKit.h>
@interface UISearchBar (ReturnType)
@property (nonatomic, readwrite) UIReturnKeyType returnKeyType;
@end
実装:それは次のようだった働いていたものを私の場合は
#import "UISearchBar+ReturnType.h"
@implementation UISearchBar (ReturnType)
UITextField *textField;
- (UITextField *) traverseForTextViewInViews: (NSArray*) views
{
// Traverse over all views recursively until we find the tresure TextField hidden deep the UISearchBar ocean!
for(UIView *subView in views) {
if([subView conformsToProtocol:@protocol(UITextInputTraits)]) {
return (UITextField *) subView;
}
UITextField *tv = [self traverseForTextViewInViews:subView.subviews];
if (tv) {
return tv;
}
}
return nil;
}
#pragma mark Custom Setters & Getters
- (void)setReturnKeyType:(UIReturnKeyType)returnKeyType
{
if (!textField) {
textField = [self traverseForTextViewInViews:self.subviews];
}
textField.returnKeyType = returnKeyType;
[self reloadInputViews];
[textField reloadInputViews];
}
- (UIReturnKeyType)returnKeyType
{
if (!textField) {
textField = [self traverseForTextViewInViews:self.subviews];
}
return textField.returnKeyType;
}
@end
明日試してみましょう。ありがとうございます –
ビジネスをしますか?キーは物事を正しい順序で行うことです。 [myTextField becomeFirstResponder]; myTextField.returnKeyType = UIReturnKeyDone; [myTextField reloadInputViews]; –
reloadInputViewsにはいくつかの警告があります。 http://stackoverflow.com/questions/5958427/can-i-change-property-uireturnkeytype-of-uitextfield-dynamicallyを参照してください。また、キーボードを元の状態に戻します。したがって、ユーザーが他のキーボードレイアウト(数字、句読点など)のいずれかに切り替えた場合、その状態は失われます。 –