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

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

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

HOME > UIButton

UIButton

 よく使うクラス。UIButtonクラスはボタンを作成します。標準的なものから画像利用したものまで様々な形のボタンを作成します。

サンプル画像

UIButtonのクラス階層

NSObject

UIResponder

UIView

UIControl

UIButton

参考Appleサイト(英語): UIKit Framework Reference UIButton Class Reference

UIButtonの例文

通常の灰色ボタンの作成方法

非常によく利用するクラス。気にいったものを作るカスタマイズ性もありますが、標準のコーッディングでも多彩なものが作成できますので紹介いたします。

サンプル画像

//灰色のボタン生成
let button = UIButton(frame: CGRect(x:0, y:0, width:250, height:50));
button.backgroundColor = UIColor.gray;
button.addTarget(self, action: #selector(ViewController.btn_click(_:)), for: .touchUpInside);
button.setTitle("Swiftサラリーマンボタン", for: UIControlState.normal);
self.view.addSubview(button);
		
//ボタンがクリックされると呼ばれます	
func btn_click(_ sender: UIButton) {
   print("button pressed")
}

背景色が緑色ボタンの作成方法

サンプル画像


//緑色のボタン生成
var button = UIButton(frame: CGRectMake(0, 0, 100, 50));
button.backgroundColor = UIColor(red: 0.0, green: 1.0, blue: 0.0, alpha: 1.0);
button.addTarget(self, action: "btn_click:", forControlEvents:.TouchUpInside);
button.setTitle("Test", forState: UIControlState.Normal);
self.view.addSubview(button);

//ボタンがクリックされると呼ばれます
func btn_click(sender: UIButton){       
        println("button is clcked!")
}


画像を利用した場合ボタンの作成方法

サンプル画像


// 画像を利用した場合の生成
var button = UIButton(frame: CGRectMake(25, 50, 250, 180));
var buttonImage:UIImage = UIImage(named: "btn_image.png")!;
button.setBackgroundImage(buttonImage, forState: UIControlState.Normal);
button.addTarget(self, action: "btn_click:", forControlEvents:.TouchUpInside);
button.setTitle("Swiftサラリーマンボタン", forState: UIControlState.Normal);
self.view.addSubview(button);

//ボタンがクリックされると呼ばれます
func btn_click(sender: UIButton){       
        println("button is clcked!")
}

UIImageに含まれるbtn_image.pngは画像をプロジェクトに追加しておく必要があります。画像をドラッグしてプロジェクトに移動させて コピーしてください。そうしないとエラーが発生します。


Buttonも文字色を変更する方法

サンプル画像

setTitleColorを変更します


        super.viewDidLoad()
        var button = UIButton(frame: CGRectMake(35, 200, 250, 50));
        button.backgroundColor = UIColor.grayColor();
        button.addTarget(self, action: "btn_click:", forControlEvents:.TouchUpInside);
        button.setTitleColor(UIColor.blueColor(), forState: UIControlState.Normal);
        button.setTitle("Swiftサラリーマンボタン", forState: UIControlState.Normal);
        self.view.addSubview(button);
        

ボタン文字を青色に変更しています。


Buttonの枠を丸くする方法

サンプル画像


var button = UIButton(frame: CGRectMake(0, 0, 250, 50));
button.backgroundColor = UIColor.grayColor();
button.layer.masksToBounds = true;
button.layer.cornerRadius = 20.0;
button.addTarget(self, action: "btn_click:", forControlEvents:.TouchUpInside);
button.setTitle("Swiftサラリーマンボタン", forState: UIControlState.Normal);
self.view.addSubview(button);


ボタンの中に文字を複数行で中央表示する

サンプル画像



        var button = UIButton(frame: CGRectMake(25, 50, 250, 80));
        button.backgroundColor = UIColor.grayColor();
        button.addTarget(self, action: "btn_click:", forControlEvents:.TouchUpInside);
        button.setTitle("Swiftサラリーマンボタン\n(ヒゲがすぐ生える)", forState: UIControlState.Normal);
        button.titleLabel?.numberOfLines = 0;//2=2行、3=3行,0=複数行
        button.titleLabel?.textAlignment = NSTextAlignment.Center; //中央表示だったり、右寄せ左寄せ設定
        self.view.addSubview(button);
        

余談ですがフラットデザイン化が進みましたので、デフォルトのUIButtonでできることは実はUILabelでも結構できてしまいます。

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

UIFontのフォント一覧をWebViewで表示させてそれをキャプチャ保存する

文字フォントがわかっても実際の文字がわかりませんので、 WebViewに出力させて、その結果を端末のPhotoアルバムに保存させる処理をつくってみました

UIScrollViewでパラパラ画像切り替え

画像のパラパラ切り替えフォトギャラリーを作成できます。大きな画像の一部分だけを切り抜きしてマスク表示するクラスです。

WatchKitでタイマーアプリを作成する。

簡単なアプリを作成しながらAppleWatchを学んでいきます。前回の記事で大まかな動きは理解できましたので、 つぎはAppleWatchとアプリとの連携をタイマー機能を利用して検証していきます
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!