Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > UISearchBar

UISearchBar

サーチバー画像

ナビゲーションバー等と一緒に利用されるサーチバーです。検索機能をコントロールに追加したい場合にご利用ください

UISearchBarのクラス階層

NSObject

UIResponder

UIView

UISearchBar


参考:UIKit Framework Reference UISearchBar Class Reference
参考:025 UISearchBarの表示
参考:Swift: UISearchBar: Get text when search button clicked
参考:How to Add Table View Search in Swift
参考:UISearchBarに決定ボタンを追加するカスタマイズ方法について

やってみた

シンプルな作成方法です。


let mySearchBar = UISearchBar()
mySearchBar.delegate = self //UISearchBarDelegate
mySearchBar.frame = CGRectMake(0, 0, 300, 50)
mySearchBar.layer.position = CGPoint(x: self.view.bounds.width/2, y: 50)
mySearchBar.showsCancelButton = true
mySearchBar.placeholder = "会社への不満を入力して下さい"
self.view.addSubview(mySearchBar)
        

上記ではSearchBarをローカルに宣言していますので使い勝手がすこし悪いので 、全体のコードをも載せておきます。


import UIKit
class ViewController: UIViewController, UISearchBarDelegate {
    
    var mySearchBar: UISearchBar!
    var myLabel : UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
       
         //サーチバー作成
        mySearchBar = UISearchBar()
        mySearchBar.delegate = self
        mySearchBar.frame = CGRectMake(0, 0, 300, 50)
        mySearchBar.layer.position = CGPoint(x: self.view.bounds.width/2, y: 50)
        mySearchBar.showsCancelButton = true
        mySearchBar.placeholder = "会社への不満を入力して下さい"
        self.view.addSubview(mySearchBar)
        
        //ラベル(出力管理用)
        myLabel = UILabel(frame: CGRectMake(10,80,300,30))
        myLabel.layer.borderWidth = 1.0
        myLabel.layer.borderColor = UIColor.grayColor().CGColor
        self.view.addSubview(myLabel)
        
    }
    
     //サーチバー更新時(UISearchBarDelegateを関連づけておく必要があります)
    func searchBar(searchBar: UISearchBar, textDidChange searchText: String) {
        myLabel.text = searchText
    }
    
    //キャンセルクリック時(UISearchBarDelegateを関連づけておく必要があります)
    func searchBarCancelButtonClicked(searchBar: UISearchBar) {
        myLabel.text = ""
        mySearchBar.text = ""
    }
    
    //サーチボタンクリック時(UISearchBarDelegateを関連づけておく必要があります)
    func searchBarSearchButtonClicked(searchBar: UISearchBar) {
        myLabel.text = "社内に同じ意見があるか検索中..."
        mySearchBar.text = ""
        self.view.endEditing(true)
    }
    
}

その他、サーチバーに影をつけたり、タイトル付けたり、キャンセルボタンではなく決定ボタンへ等のカスタマイズ等も可能です。 Swift Docsさんがとても分かりやすいのでぜひご確認ください。

サーチバー画像

↓こんな記事もありますよ!

NSThreadでスレッド処理を行う

タイマー処理と同様に利用できるスレッドの処理です。NSTimerではヒゲがのびたサンプルでしたので眉毛の濃くなるサンプルにしてみます。ただ、どうやらThread処理は 推奨されておらず、dispatch_queueを使用するべきのようです。

UIActivityIndicatorView

iOSでローディングをする簡単な方法は標準のインディケータを表示する方法です。画面中央でぐるぐる回ります。

Swiftがオープンソース化!!!(WWDC2015)

2:22:00からSwiftの話です!オープンソースを発表したタイミングは2:23:28のあたり。拍手喝采です。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!