facebook twitter hatena line email

「Ios/swift/外部ライブラリ/Eureka」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
行22: 行22:
 
                 row.title = "Text Row"
 
                 row.title = "Text Row"
 
                 row.placeholder = "Enter text here"
 
                 row.placeholder = "Enter text here"
 +
            }.onChange{row in
 +
                print("text " + String(row.value))
 
             }
 
             }
 
             <<< PhoneRow(){
 
             <<< PhoneRow(){
 
                 $0.title = "Phone Row"
 
                 $0.title = "Phone Row"
 
                 $0.placeholder = "And numbers here"
 
                 $0.placeholder = "And numbers here"
 +
            }.onChange{row in
 +
                print("phone " + String(row.value))
 
             }
 
             }
        +++ Section("Section2")
+
            +++ Section("Section2")
 
             <<< DateRow(){
 
             <<< DateRow(){
 
                 $0.title = "Date Row"
 
                 $0.title = "Date Row"
 
                 $0.value = NSDate(timeIntervalSinceReferenceDate: 0)
 
                 $0.value = NSDate(timeIntervalSinceReferenceDate: 0)
 +
            }.onChange{row in
 +
                print("date " + String(row.value))
 
             }
 
             }
 +
            <<< ButtonRow(){
 +
                $0.title = "Button1"
 +
            }.onCellSelection{row in
 +
                    print("click")
 +
        }
 
     }
 
     }
 
  }
 
  }
  
==イベント==
+
==コールバック==
 
  onChange() セルの値が変わった時に呼ばれる
 
  onChange() セルの値が変わった時に呼ばれる
 
  onCellSelection() セルをタップした時に呼ばれる
 
  onCellSelection() セルをタップした時に呼ばれる

2016年8月2日 (火) 19:19時点における版

Eurekaとは

swiftの設定画面用のライブラリ

公式

https://github.com/xmartlabs/Eureka

インストール

vi podfile
source 'https://github.com/CocoaPods/Specs.git'  
platform :ios, '8.0'  
use_frameworks!
pod 'Eureka', '~> 1.6'
$ pod install

サンプル

import Eureka
class MyFormViewController: FormViewController {
   override func viewDidLoad() {
       super.viewDidLoad()
       form +++ Section("Section1")
           <<< TextRow(){ row in
               row.title = "Text Row"
               row.placeholder = "Enter text here"
           }.onChange{row in
               print("text " + String(row.value))
           }
           <<< PhoneRow(){
               $0.title = "Phone Row"
               $0.placeholder = "And numbers here"
           }.onChange{row in
                print("phone " + String(row.value))
           }
           +++ Section("Section2")
           <<< DateRow(){
               $0.title = "Date Row"
               $0.value = NSDate(timeIntervalSinceReferenceDate: 0)
           }.onChange{row in
                print("date " + String(row.value))
           }
           <<< ButtonRow(){
               $0.title = "Button1"
           }.onCellSelection{row in
                   print("click")
       }
   }
}

コールバック

onChange() セルの値が変わった時に呼ばれる
onCellSelection() セルをタップした時に呼ばれる
cellSetup() セルの初期生成時に呼ばれる
cellUpdate() セルが表示される度に呼ばれる
onCellHighlight() セルがファーストレスポンダーになった時に呼ばれる
onCellUnHighlight() セルがファーストレスポンダーではなくなった時に呼ばれる
onExpandInlineRow() インライン型のセルが広がる前に呼ばれる
onCollapseInlineRow() インライン型のセルが閉じる前に呼ばれる
onPresent() 他のViewControllerへ遷移する前に呼ばれる

参考:http://blog.personal-factory.com/2015/12/29/eureka-tutorial/