web-dev-qa-db-ja.com

アプリのUISearchBarにカーソルが表示されない

アプリのUISearchBarsの場合、iOS 7で実行しているときに、バーにカーソルが表示されていません。

最小ターゲット6でSDK 7を使用しています。ナビゲーションバーの半透明性をオフにし、実行時に色を設定します。私たちが違うやり方でやっている他のことは考えられません。

51
Jason Hocker

私たちの問題は、色合いが白に設定されていたので、私はそれを見ませんでした。

109
Jason Hocker

セットする

searchBar.tintColor = [UIColor blueColor];
28
Mann

検索ボックスのプロパティウィンドウ

表示セクションを開く>色の設定-デフォルト。

enter image description here

これが役立つことを願っています。

7
Ram S

これはSwiftでそれを行う方法です:

override func viewWillAppear(animated: Bool) {
    self.searchBar.tintColor = UIColor.whiteColor()

    let view: UIView = self.searchBar.subviews[0] as! UIView
    let subViewsArray = view.subviews

    for (subView: UIView) in subViewsArray as! [UIView] {
        println(subView)
        if subView.isKindOfClass(UITextField){
            subView.tintColor = UIColor.blueColor()
        }
    }

}
3
Benjamin
searchBar.tintColor = view.tintColor  // self.view usually has the proper tintColor

より良い .blueまたは何でも。

2
Dmitry Isaev

ストーリーボード、xib、またはコードでUISearchBarのtintColorを設定するだけです。 XcodeはデフォルトのtintColorを無視しているようです。

0
Madson Cardoso

SearchBarsサブビューをループして、uitextfieldサブビューを取得し、その@ "insertionPointColor"値を目的の色に設定できます。動作しますが、プライベートAPIです

for (UIView *subView in self.searchBar.subviews) {
    if ([subView isKindOfClass:[UITextField class]]) {
        [[(UITextField *) subView valueForKey:@"textInputTraits"] setValue:[UIColor blackColor] forKey:@"insertionPointColor"];
    }
}
0
ClemensL