iPhoneアプリ開発 −遷移先のViewControllerに値を引き継ぎたい−

公開日: : iPhone, IT, Mac


例えば、トップページに複数個のボタンがあって、「A」と「B」というボタンを押下した際に、同じViewControllerに移動させたいとします。
遷移先で「A」を押されたのか、「B」を押されたのかどっちか分からないと困ります。

そこで、あるViewControllerから遷移するViewControllerに値を引き継ぐ方法をメモしておきます。

 実装方法

実は特に面倒な事はなくて、遷移元で、遷移先のプロパティに値を入れればOKです。

 プログラム例

 遷移元のViewController

buttonActionなどに以下を記述

 nextViewController *nextViewController = [[nextViewController alloc] init];
 [nextViewController setParam:@"Param"]; //(1)
 [self.navigationController pushViewController:nextViewController animated:YES];

(1)がnextViewControllerにプロパティとして宣言されていればOKです。
もちろんプロパティなので、以下のように書いても問題ないです。

 nextViewController.param = @"Param";
 遷移先のViewController

nextViewControllerにプロパティを用意。
なので、まず.hファイルに以下を追記します。

//略
@property NSString *param;
//略

そして、.mファイルに以下を追記します。

//略
@synthesize param  = _param;
//略

あとは、遷移すると値がparamに入っているはずなので、以下の処理を記入すれば終了です。
※viewDidLoadやviewWillAppearとかですかね。

if([self.param isEqualToString:@"Param"]){
 //処理色々
}

広告

関連記事

Jenkins + スマホアプリ(1) -スマホアプリ用CI環境を作ってみよう-

前回までは、iPhoneアプリでのCI環境でした。 TestFlightがAndroidアプリにも

記事を読む

no image

Objective-cで悩んでいたこと −アクセサのことについて−

* 疑問 以前書いたiPhoneアプリを開発していて(Objective-Cを触っていて)疑問に思

記事を読む

no image

iPhoneアプリ開発 -バックグラウンド処理をした際にはまったこと-

* おきたこと 以下のメソッドを用いて、処理に時間がかかるもの(ここだとhoge)をバックグラウンド

記事を読む

Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-

* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット

記事を読む

no image

MySQLのバックアップ手順 -消えたら困るものはバックアップ-

そろそろデータが消えてもらったら困るぐらいになっていたのでバックアップをとることにしました。 とい

記事を読む

no image

iPhoneアプリ開発 −iOS6からの「写真」へのアクセス問題−

写真を扱うアプリを開発している際に問題になったこと。 ※結構前の話を今更まとめてみる。 * 写真へ

記事を読む

jenkins-files

Windows環境でもJenkins -執事さんとご対面-

Trac Lightningに同梱されていますし、Windows環境でHudsonを使っている人は結

記事を読む

no image

jQuery Mobileの初期設定 -jQuery Mobieを利用時にページ内リンクさせたい-

* 前提 jQuery Mobileを利用していて、以下のタグを使ってページ内遷移したいことがありま

記事を読む

no image

WordPressプラグイン「SyntaxHighlighter Evolved」が動かない!?

* 起きたこと ある時から、本ブログのコードの部分が「SyntaxHighlighter」で表示され

記事を読む

no image

Androidアプリ開発 -リストをタッチして別ページ表示-

* 前提 -「設定画面」で各種項目を設定。 --Activity:ConfigActivity --

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑