質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Xcode 7

Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

Q&A

0回答

1587閲覧

Table Viewにボタンをつける

Takoyaki_oko

総合スコア19

Xcode 7

Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

0グッド

0クリップ

投稿2016/08/19 07:17

###前提・実現したいこと
ここに質問したいことを詳細に書いてください
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。

Xcodeでswiftを使って世界時計のアプリを作ろうと思っているのですが、画面上にTable Viewを配置してその中に国名を表示したボタンをいくつも作ってそこの現在の時刻を表示したいです。
前にストップウォッチのアプリを作って、その時もTable Viewを配置してボタンを押した時にその時のタイムを次々記録していくものを作りました。iPhoneに最初から入っているアプリみたいな感じです。そこで、ストップウォッチのアプリを今回作ろうと思っているアプリに利用しようと思ったのですが、Table Viewにボタンを配置したことがないので、やり方が全くわかりません。下記に載せたのはそのストップウォッチのアプリです。ボタンなどはプログラム上で作成せずにstoryboardで作成してから結びつけました。ご回答よろしくお願いします。

###発生している問題・エラーメッセージ

エラーメッセージ

###該当のソースコード

ここにご自身が実行したソースコードを書いてください import UIKit class SecondViewController: UIViewController { //タイムラベル @IBOutlet weak var Timelabel: UILabel! //スタートボタン @IBOutlet weak var startButton: UIButton! //スプリットボタン @IBOutlet weak var splitButton: UIButton! //リセットボタン @IBOutlet weak var resetButton: UIButton! //テーブル @IBOutlet weak var tableView1: UITableView! var timeArray:[String] = [] var countNum = 0 var timerRunning = false var timer = NSTimer() override func viewDidLoad() { super.viewDidLoad() splitButton.enabled = false // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } func update() { countNum += 1 timeFormat(countNum) } func timeFormat(countNum:Int) { let ms = countNum % 100 let s = (countNum - ms) / 100 % 60 let m = (countNum - s - ms) / 6000 % 3600 self.Timelabel.text = String(format: "%02d:%02d.%02d", m, s, ms) } //スタートボタン押された時 @IBAction func startTimer(sender: AnyObject) { if timerRunning == false { startButton.setImage(UIImage(named: "stop.png"), forState: UIControlState.Normal) timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: self, selector: #selector(SecondViewController.update), userInfo: nil, repeats: true) timerRunning = true resetButton.enabled = false splitButton.enabled = true } else{ timer.invalidate() startButton.setImage(UIImage(named: "start.png"), forState: UIControlState.Normal) timerRunning = false resetButton.enabled = true splitButton.enabled = false } } //ストップボタン押された時 @IBAction func stopTimer(sender: AnyObject) { if timerRunning == true { timeArray.insert(Timelabel.text!, atIndex: 0) tableView1.reloadData() } } //リセットボタン押された時 @IBAction func resetTimer(sender: AnyObject) { countNum = 0 Timelabel.text = "00:00.00" timeArray = [] tableView1.reloadData() startButton.setImage(UIImage(named: "start.png"), forState: UIControlState.Normal) } /// セルの個数を指定するデリゲートメソッド(必須) func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return timeArray.count } /// セルに値を設定するデータソースメソッド(必須) func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { // セルを取得する let cell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier("tableCell", forIndexPath: indexPath) // セルに表示する値を設定する let label2 = tableView.viewWithTag(1) as! UILabel label2.text = "\(timeArray[indexPath.row])" return cell } } ###試したこと 課題に対してアプローチしたことを記載してください ###補足情報(言語/FW/ツール等のバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

_Kentarou

2016/08/19 07:46

Table Viewにボタンをつけると言うのは、UITableViewCellにボタンを乗せるということですか? そうでしたら、以前のコードでもラベルを乗せているようなので、同じ用にボタンを配置すれば良いのではないでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問