私はiosが初めてです。参加するキーボードのリターンキーの種類を変更する次のコードがあります。ios6 では問題なく動作しますが、ios7 では動作しません。if ブロック内のコードは ios7 では実行されません。
誰かが同様の問題を見たことがありますか?これに対する回避策はありますか?
if ([searchBarSubview conformsToProtocol:@protocol(UITextInputTraits)]) {
[searchBar resignFirstResponder];
[(UITextField *)searchBarSubview setReturnKeyType:UIReturnKeyJoin];
[searchBar becomeFirstResponder];
}
グーグルで検索したところ、変更するはずのないUISearchBarの内部構造が変更されたため、Joinボタンが表示されないことがわかりました。これを修正する方法と、何が変更されたかをどこで確認できるかわかりません。誰でも説明できますか?
また、次の(同様の方法で)回避策のコードを試してみましたが、幸運ではありませんでした
for(UIView *searchBarSubview in [searchBar subviews]) {
if([searchBarSubview conformsToProtocol:@protocol(UITextInputTraits)]) {
[(UITextField *)searchBarSubview setReturnKeyType: UIReturnKeyJoin];
} else {
for(UIView *subSubView in [searchBarSubview subviews]) {
if([subSubView conformsToProtocol:@protocol(UITextInputTraits)]) {
[(UITextField *)subSubView setReturnKeyType: UIReturnKeyJoin];
}
}
}