2

iPhone SDK 3.0 を使用して、入力中に表示される (オプションの) 補完オプションを使用してテキスト入力を許可したいと考えています。つまり、自由形式の入力も許可します。そのため、UISearchBar (テキスト変更イベントがある) と UISearchDisplayController を使用してオプションを表示しています。

問題は、DONEボタンにSEARCHではなくDONEと表示させたいのですが、それを設定する方法が見つかりません。明らかに、何かが足りないと感じています。または、SDK API の Interface Builder に設定するプロパティがいくつかあります。

私が望む結果(フリーフォーマットの入力、完了、DONEボタン)を達成した他のアプリ(ストア内)を見たので、私が見逃している別のアプローチがあるかもしれません. ご指摘ありがとうございます。

4

4 に答える 4

5

+1 walの答えについては、安全のために、今後のリリースでビュー階層の変更に適切に対応するには、次のコードを使用することを検討してください。

NSArray *subviews = [<searchBar> subviews] ;
for(id subview in subviews) {
    if([subview isKindOfClass:[UITextField class]]) {
        [(UITextField*)subview setReturnKeyType:UIReturnKeyDone];
    }
}
于 2010-08-29T22:09:12.283 に答える
1

このコードをviewDidLoadに入れます。

- (void)viewDidLoad {
...

NSArray *subviews = [self.searchDisplayController.searchBar subviews] ;
UITextField *searchField = [subviews objectAtIndex:([subviews count]-2)];
[searchField setReturnKeyType:UIReturnKeyDone];

...
}
于 2010-03-29T15:33:09.227 に答える