2013-10-07 22 views
47

私たちのアプリのUISearchBarsについては、iOS 7で動作しているときにカーソルがバーに表示されることはありません。私たちのアプリのUISearchBarにカーソルが表示されない

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

答えて

100

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

+0

同じ問題が私の側にありました。ありがとう –

+1

カーソルをボタンと異なる色にしたい場合:http://stackoverflow.com/a/42444940/4754881 –

+0

おかげで –

26

設定

searchBar.tintColor = [UIColor blueColor]; 
+1

検索バーの色は(66,107,242)のようです – cncool

0

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

5

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

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

enter image description here

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

0

searchBarsサブビューをループして、uitextfieldサブビューを取得し、@ "insertionPointColor"値を目的の色に設定できます。動作しますが、これは、それはスウィフトで行うことができる方法である

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

プライベートAPIです:.blueまたは何よりも

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() 
     } 
    } 

} 
+0

私のXamarin C#ポートは次のとおりです。UIView view = searchBar.Subviews [0]; foreach(view.SubviewsのUIViewアイテム) { if(item is UITextField) { item.TintColor = UIColor.Blue; } } –

0
searchBar.tintColor = view.tintColor // self.view usually has the proper tintColor 

良いです。