UIButton サンプル
サンプルで動作を確認 コピーペーストで確認できます。
全体をコピー後、不必要な部分を削除することでコーディングを素早くできます。
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンに設定されている UILabel を取得 let uiLabel : UILabel = button.titleLabel! // ノーマル状態時のタイトルを取得 let stateTitle : String = button.titleForState(UIControlState.Normal)! // ステートを指定して、タイトルを設定 button.setTitle("タイトル",forState:UIControlState.Normal) // ステートを指定して、アトリビュートを設定 let attribute : NSAttributedString = NSAttributedString( string: "bold", attributes: [NSFontAttributeName: UIFont(name: "HiraKakuProN-W6", size: 20)!] ) button.setAttributedTitle(attribute, forState: UIControlState.Normal) // ステートを指定して、アトリビュートを取得 let attributedString : NSAttributedString = button.attributedTitleForState(UIControlState.Normal)! // ステートを指定して、タイトルに設定されている色を取得 let color : UIColor = button.titleColorForState(UIControlState.Normal)! // ステートを指定して、タイトルの色を設定 button.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal) //ステートを指定して、タイトルのシャドウ色を取得 let shadowColor : UIColor = button.titleShadowColorForState(UIControlState.Normal)! // ステートを指定して、タイトルのシャドウ色を設定 button.setTitleShadowColor(UIColor.redColor(), forState: UIControlState.Normal) // タップ時にシャドウのオフセットを反転させる button.reversesTitleShadowWhenHighlighted = true // タップ時にシャドウのオフセットを反転させる設定の状態を取得 let reversesTitleShadowWhenHighlighted : Bool = button.reversesTitleShadowWhenHighlighted // タップ時に画像を反転させる設定の有効、無効 button.adjustsImageWhenHighlighted = true // タップ時に画像を反転させる設定の有効、無効を取得 let adjustsImageWhenHighlighted : Bool = button.adjustsImageWhenHighlighted // ボタンが無効時に画像が変更されるかを設定 button.adjustsImageWhenDisabled = true // ボタンが無効時に画像が変更されるかの設定を取得 let adjustsImageWhenDisabled : Bool = button.adjustsImageWhenDisabled // ボタンタップ時にハイライトさせるかの設定 button.showsTouchWhenHighlighted = true // ボタンタップ時にハイライトさせるかの設定を取得 let showsTouchWhenHighlighted : Bool = button.showsTouchWhenHighlighted // ステートを指定して、設定されているバックグランド画像を取得 let backgroundImage : UIImage = button.backgroundImageForState(UIControlState.Normal)! // ステートを指定して、設定されている画像を取得 let uiImage : UIImage = button.imageForState(UIControlState.Normal)! // UIImage を作成 let setImage : UIImage = UIImage(imageLiteral: "test.png") // ステートを指定して、バックグランド画像を設定 button.setBackgroundImage(setImage, forState: UIControlState.Normal) // ステートを指定して、画像を設定 button.setImage(setImage, forState: UIControlState.Normal) // ボタンに色を設定 button.tintColor = UIColor.orangeColor() // ボタンの色を取得 let tintColor : UIColor = button.tintColor // ボタンに設定されているタイプを取得 let buttonType : UIButtonType = button.buttonType // ボタンのタイトルを取得 let currentTitle : String = button.currentTitle! // ボタンのアトリビュートを取得 let currentAttributedTitle : NSAttributedString = button.currentAttributedTitle! // ボタンの色を取得 let currentTitleColor : UIColor = button.currentTitleColor // ボタンのシャドウ色を取得 let currentTitleShadowColor : UIColor = button.currentTitleShadowColor! // ボタンの画像を取得 let currentImage : UIImage = button.currentImage! // ボタンの背景画像を取得 let currentBackgroundImage : UIImage = button.currentBackgroundImage! // ボタンの画像をUIImageViewで取得 let imageView : UIImageView = button.imageView! // ボタンタップ時に画像が変更されるかを設定 button.adjustsImageWhenHighlighted = true // ボタンがタップ時に画像が変更されるかの設定を取得 let adjustsImageWhenHighlighted2 : Bool = button.adjustsImageWhenHighlighted self.view.addSubview(button)
UIButton 概要
UIKit のボタンを表示時に利用します。
- Import Statement
import UIKit - Available
iOS 2.0 and later - Inherits
UIControl
利用できるボタンの種類
ステートの状態一覧 UIButtonType.Custom UIButtonType.System UIButtonType.DetailDisclosure UIButtonType.InfoLight UIButtonType.InfoDark UIButtonType.ContactAdd
イニシャライザー (初期化)
■ ボタンの種類を指定してボタンを作成
convenience init(type buttonType: UIButtonType)
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System)
インスタンスメソッド
■ ステートを指定してタイトルを取得
func titleForState(_ state: UIControlState) -> String?
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ノーマル状態時のタイトルを取得 let stateTitle : String = button.titleForState(UIControlState.Normal)!
■ システムボタンを指定してボタンを作成
func setTitle(_ title: String?, forState state: UIControlState)
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、タイトルを設定 button.setTitle("タイトル",forState:UIControlState.Normal)
■ ステートを指定して、アトリビュートを取得
func attributedTitleForState(_ state: UIControlState) -> NSAttributedString?
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、アトリビュートを取得 let attributedString : NSAttributedString = button.attributedTitleForState(UIControlState.Normal)!
■ ステートを指定して、アトリビュートを設定
func setAttributedTitle(_ title: NSAttributedString?, forState state: UIControlState)
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、アトリビュートを設定 let attribute : NSAttributedString = NSAttributedString( string: "bold", attributes: [NSFontAttributeName: UIFont(name: "HiraKakuProN-W6", size: 20)!] ) button.setAttributedTitle(attribute, forState: UIControlState.Normal)
■ ステートを指定して、タイトルに設定されている色を取得
func titleColorForState(_ state: UIControlState) -> UIColor?
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、タイトルに設定されている色を取得 let color : UIColor = button.titleColorForState(UIControlState.Normal)!
■ ステートを指定して、タイトルの色を設定
func setTitleColor(_ color: UIColor?, forState state: UIControlState)
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、タイトルの色を設定 button.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal)
■ ステートを指定して、タイトルのシャドウ色を取得
func titleShadowColorForState(_ state: UIControlState) -> UIColor?
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、タイトルのシャドウ色を取得 let shadowColor : UIColor = button.titleShadowColorForState(UIControlState.Normal)!
■ ステートを指定して、タイトルのシャドウ色を設定
func setTitleShadowColor(_ color: UIColor?, forState state: UIControlState)
ステートに関しては、UIControl ドキュメントを参照
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、タイトルのシャドウ色を設定 button.setTitleShadowColor(UIColor.redColor(), forState: UIControlState.Normal)
■ ステートを指定して、設定されているバックグランド画像を取得
func backgroundImageForState(_ state: UIControlState) -> UIImage?
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、設定されているバックグランド画像を取得 let uiImage : UIImage = button.backgroundImageForState(UIControlState.Normal)!
■ ステートを指定して、設定されている画像を取得
func imageForState(_ state: UIControlState) -> UIImage?
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、設定されている画像を取得 let uiImage : UIImage = button.imageForState(UIControlState.Normal)!
■ ステートを指定して、バックグランド画像を設定
func setBackgroundImage(_ image: UIImage?, forState state: UIControlState)
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // UIImage を作成 let setImage : UIImage = UIImage(imageLiteral: "test.png") // ステートを指定して、バックグランド画像を設定 button.setBackgroundImage(setImage, forState: UIControlState.Normal)
■ ステートを指定して、画像を設定
func setImage(_ image: UIImage?, forState state: UIControlState)
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ステートを指定して、画像を設定 button.setImage(setImage, forState: UIControlState.Normal)
■ func backgroundRectForBounds(_ bounds: CGRect) -> CGRect
■ func contentRectForBounds(_ bounds: CGRect) -> CGRect
■ func titleRectForContentRect(_ contentRect: CGRect) -> CGRect
■ func imageRectForContentRect(_ contentRect: CGRect) -> CGRect
プロパティ
■ タップ時にシャドウのオフセットを反転させるかを設定、取得
var reversesTitleShadowWhenHighlighted: Bool
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // タップ時にシャドウのオフセットを反転させる button.reversesTitleShadowWhenHighlighted = true // タップ時にシャドウのオフセットを反転させる設定の状態を取得 let reversesTitleShadowWhenHighlighted : Bool = button.reversesTitleShadowWhenHighlighted
■ タップ時に画像を反転させる設定の有効、無効を設定、取得
var adjustsImageWhenHighlighted: Bool
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // タップ時に画像を反転させる設定の有効、無効 button.adjustsImageWhenHighlighted = true // タップ時に画像を反転させる設定の有効、無効を取得 let adjustsImageWhenHighlighted : Bool = button.adjustsImageWhenHighlighted
■ ボタンが無効時に画像が変更されるかを設定
var adjustsImageWhenDisabled: Bool
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンが無効時に画像が変更されるかを設定 button.adjustsImageWhenDisabled = true // ボタンが無効時に画像が変更されるかの設定を取得 let adjustsImageWhenDisabled : Bool = button.adjustsImageWhenDisabled
■ ボタンタップ時にハイライトさせるかの設定
var showsTouchWhenHighlighted: Bool
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンタップ時にハイライトさせるかの設定 button.showsTouchWhenHighlighted = true // ボタンタップ時にハイライトさせるかの設定を取得 let showsTouchWhenHighlighted : Bool = button.showsTouchWhenHighlighted
■ ボタンに色を設定、取得
var tintColor: UIColor!
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンに色を設定 button.tintColor = UIColor.orangeColor() // ボタンの色を取得 let tintColor : UIColor = button.tintColor
■ var contentEdgeInsets: UIEdgeInsets
■ var titleEdgeInsets: UIEdgeInsets
■ var imageEdgeInsets: UIEdgeInsets
■ ボタンに設定されているタイプを取得
var buttonType: UIButtonType { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンに設定されているタイプを取得 let buttonType : UIButtonType = button.buttonType
■ ボタンのタイトルを取得
var currentTitle: String? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンのタイトルを取得 let currentTitle : String = button.currentTitle!
■ ボタンのアトリビュートを取得
var currentAttributedTitle: NSAttributedString? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンのアトリビュートを取得 let currentAttributedTitle : NSAttributedString = button.currentAttributedTitle!
■ ボタンの色を取得
var currentTitleColor: UIColor { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンの色を取得 let currentTitleColor : NSAttributedString = button.currentTitleColor
■ ボタンのシャドウ色を取得
var currentTitleShadowColor: UIColor? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンのシャドウ色を取得 let currentTitleShadowColor : UIColor = button.currentTitleShadowColor!
■ ボタンの画像を取得
var currentImage: UIImage? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンの画像を取得 let currentImage : UIImage = button.currentImage!
■ ボタンのバックグランド画像を取得
var currentBackgroundImage: UIImage? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンの背景画像を取得 let currentBackgroundImage : UIImage = button.currentBackgroundImage!
■ ボタンの画像をUIImageViewで取得
var imageView: UIImageView? { get }
// システムボタンを指定してボタンを作成 let button : UIButton = UIButton(type: UIButtonType.System) // ボタンの画像をUIImageViewで取得 let imageView : UIImageView = button.imageView!
おすすめの本