UITableViewの上に、UITableViewCellをのっけてやることで、TableViewをカスタマイズできます。
前回のブログの実装の続きになりますが、今回はTableViewCell上にボタンを配置した場合に選択行を取得する方法です。
StoryBoard上では以下のように配置しています。

アシスタントエディタで、AddButtonとtapAddButtonメソッドを紐付けし、以下のように実装します。
ここで重要なところは、
btn.superview?.superview as! UITableViewCell
です。AddButtonのある位置から、SampleCellを取ってきたい訳で、画像にあるように2回superviewしないといけない訳です。
これだけなのですが、自分が調べた時はObjective-Cの情報だったり、海外のサイトで英語でいろいろ書いてあったりで解決するのに時間がかかってしまったのでメモです。
ってことで、そんな実装をしている「巻数メモ」アプリをリリースしています。

巻数メモ
前回のブログの実装の続きになりますが、今回はTableViewCell上にボタンを配置した場合に選択行を取得する方法です。
StoryBoard上では以下のように配置しています。

アシスタントエディタで、AddButtonとtapAddButtonメソッドを紐付けし、以下のように実装します。
@IBAction func tapAddButton(sender: AnyObject) {
// タップされたボタンのtableviewの選択行を取得
var btn = sender as! UIButton
var cell = btn.superview?.superview as! UITableViewCell
var row = tableView.indexPathForCell(cell)?.row
// 行数を表示
println("\(row)");
}
ここで重要なところは、
btn.superview?.superview as! UITableViewCell
です。AddButtonのある位置から、SampleCellを取ってきたい訳で、画像にあるように2回superviewしないといけない訳です。
これだけなのですが、自分が調べた時はObjective-Cの情報だったり、海外のサイトで英語でいろいろ書いてあったりで解決するのに時間がかかってしまったのでメモです。
ってことで、そんな実装をしている「巻数メモ」アプリをリリースしています。

巻数メモ