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

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

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

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

1173閲覧

TableViewCellを押すと画面が遷移する方法

harusame18

総合スコア13

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2019/05/14 11:09

編集2019/05/14 11:28

前提・実現したいこと

・TableViewCellをタップすると画面が遷移するようにしたい
・リストを削除した後に別ページへ行くと復活してしまうため削除されたままにしたい
XcodeでToDoリストのような物を作成しており、
リストの追加できるようにしたのですが、
そのリストをタップするとさらに中セグメントに遷移できるようにしたいです。
また、スワイプして削除できるようにしたのですが、リストを追加する画面に行き戻るボタンを押すと復活してしまいます。

現状だと、ToDoを一個一個作成するのみ
これを、カテゴリー選択→ToDoの流れにしたいです。

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

Segueで画面遷移させようかと思いましたが、繋げられず八方ふさがりです。

エラーメッセージ

該当のソースコード

import UIKit

//classの継承を追加
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {

//UITableView、numberOfRowsInSectionの追加(表示するcell数を決める) func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { //戻り値の設定(表示するcell数) return TodoKobetsunonakami.count } //UITableView、cellForRowAtの追加(表示するcellの中身を決める) func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { //変数を作る let HubCell : UITableViewCell = tableView.dequeueReusableCell(withIdentifier: "HubCell", for: indexPath) //変数の中身を作る HubCell.textLabel!.text = TodoKobetsunonakami[indexPath.row] //戻り値の設定(表示する中身) return HubCell } //セルの編集許可 func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool { return true } //スワイプしたセルを削除 ※arrayNameは変数名に変更してください func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) { if editingStyle == UITableViewCell.EditingStyle.delete { TodoKobetsunonakami.remove(at: indexPath.row) tableView.deleteRows(at: [indexPath as IndexPath], with: UITableView.RowAnimation.automatic) } } //最初からあるコード override func viewDidLoad() { super.viewDidLoad() //追加画面で入力した内容を取得する if UserDefaults.standard.object(forKey: "HubList") != nil { TodoKobetsunonakami = UserDefaults.standard.object(forKey: "HubList") as! [String] } } //最初からあるコード override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() }

}

ソースコード

試したこと

Segueで遷移

補足情報(FW/ツールのバージョンなど)

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問