メモ帳アプリを作りたいのですが、ViewControllerクラスにUiTextViewを配置し、TableViewクラスにそのUiTextViewで書き込んだ内容をテーブル表示したいのですが上手くテーブル表示されません。
iPhoneに元々入っているようなメモ帳アプリのように、初めにTableViewのページを表示し、ボタンを押すことでテキスト入力画面へ移動し、ナビゲージョンコントローラーを使ってTableViewの画面へ戻ってその内容をテーブル表示したいと考えています。
値の受け渡しはAppDelegateを使って行っていてAppDelegateクラスにはlistという配列を用意しています。値の受け渡しには成功していると思うのですが、何がいけないのでしょうか?
ViewDidLoadメソッドにprint関数を用意しapp.listを入れてみましたがアプリ起動後の一度だけしか呼ばれていませんでした。
ナビゲーションコントローラでバックをするとそのページはコードを読み込まれていないのでしょうか?
書き込んだテキストはボタンを押すことで値を渡すようにしています。
汚いコードですがよろしくお願いいたします。
import UIKit class ViewController: UIViewController { @IBOutlet weak var myText:UITextView! let appDele = UIApplication.sharedApplication().delegate as! AppDelegate @IBAction func btn(sender:UIButton){ appDele.list.append(myText.text) } override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } }
import UIKit class TableView: UITableViewController { let app = UIApplication.sharedApplication().delegate as! AppDelegate override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return app.list.count } override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = UITableViewCell(style: .Default,reuseIdentifier: "myCell") cell.textLabel?.text = app.list[indexPath.row] as String return cell } }
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/10/15 01:52
2015/10/15 02:06
退会済みユーザー
2015/10/15 04:06