[iPhone] 画像をボタンにする(Objective-C)

Appleのフラットデザインのコンセプトのおかげで立体的なボタンの枠がデフォルトではなくなりました。そこで画像付きボタン、発想を逆にすると画像をボタン化してみます。
 
かわいそうなので背景をグレーにしましたが、こうなります。
 
スクリーンショット 2014-02-14 7.17.48

UIButton に画像を貼る

 
どうしても、以前のようなボタンにしたい場合は立体的なボタンの画像を貼る
というのもありますが、いっそのこと画像にボタン機能が付けば直感的に使えるなると
まんまと Apple さまの思い通りな展開に…
こんな感じでしょうか
 
スクリーンショット 2014-02-14 8.45.51
 
storyboard で作成する場合は

  1. 画像を「Add Files to …」でプロジェクトに追加
  2. ライブラリーから Button を選択して画面に配置
  3. Button の Attributes Inspector からTypeを「Custom」に変更
  4. image を追加した画像に設定

 
button_1
 
このボタンが押された時の Action を設定します。
 
ViewController.h

 
ViewController.m

 
ボタンの Referencing Outlet を buttonYes,
Touch Up Inside を pushButtonYes にそれぞれ
View Controller Scene と結びます。
buttonNo も同様に接続します。
 
button_2
 
実行してボタンをそれぞれ押すとログが出てきました。
 
スクリーンショット 2014-02-14 10.02.43
 

コードのみで UIButton に画像を貼る

 
画面サイズに応じてボタン位置を変更したい場合は、コードで書いた方が便利です。
ViewController.m のみの記述です

  1. UIImage のインスタンスを生成
  2. UIButton のインスタンスを生成
  3. Type を Custom に指定して画像を設定
  4. 表示するフレームを設定
  5. ビューへ貼る
  6. ボタンが押された時のアクションを設定
    • UIButton のaddTarget メソッドを使います
    • UIControlEventTouchUpInside に設定

 
ViewController.m

 
buttonYes.frame = CGRectMake(50, 160, 90, 90);
の (50, 160, …)を変えれば位置を自由に設定できます。
 

ご納得?

ご納得?

ページのトップへ戻る
 
sponsored link

シェアする

  • このエントリーをはてなブックマークに追加

フォローする