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

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

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

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

Q&A

1回答

1333閲覧

在席管理アプリ 座りたい座席をタップして自分の名前を表示させる方法

coro123

総合スコア4

Swift

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

0グッド

0クリップ

投稿2020/03/09 23:50

前提・実現したいこと

swift及びプログラミング初心者です。
今回、社内の在席管理する簡単なアプリを作成しようと思っています。
(仕様要件)
・座席は10席
・毎回、社員の座る位置が変わるため、当日座りたい座席ボタンをタップしたら社員のリストが表示され、そこから自分の名前を選択する
・選択すると最初の座席画面の座席に自分の名前が入る

まずは第一段階としてここまで作成したいのですが、方法が分かりません。

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

【実施したこと】 ・座席一覧の画面にて、座席用のボタンを配置 ・社員のリストを作成 ・ボタンタップ時に社員リストを表示(ただし、遷移したときに座席ボタンの引数を渡していない) このあと、社員リストで自分の名前をタップすると、最初の画面に戻り(座席ボタンと社員名の引数が必要になる)、当該座席に自分の名前が表示されるようにしたいのですが、方法がわかりません。

該当のソースコード

ソースコード

試したこと

遷移元から遷移先に引数を渡したい時、prepare関数があることは調べたのですが、これはボタンのようなオブジェクトに対しても使えるのか、使うためにはどのように記載すればいいのか分かりませんでした。
また、遷移先から遷移元に戻る際の引数の渡し方もよく分かりませんでした。

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

swift5 xcode11

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

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

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

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

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

hoshi-takanori

2020/03/10 00:11

社員それぞれが自分のスマホで今日の座席を確認(入力?)できるようにしたいってことすよね。なんらかの方法でみんなの座席を共有する必要があるので、アプリ単体では機能しない(サーバー的なものが必要になる)と思います。
coro123

2020/03/10 00:17

説明不足でした。自分のスマフォではなく、事務所の入り口にタブレットを配置し、それをディスプレイに映し出すだけです。なのでサーバは不要な認識です
hoshi-takanori

2020/03/10 00:21

了解しました。画面遷移は Storyboard をお使いの場合は、ボタンで遷移する場合でも prepare(for segue:) とかいうメソッドが呼ばれると思いますので、そこで次の画面に情報を渡せます。具体的な方法は、まずご自分のソースを貼っていただければそれに対してアドバイスしますよ。
t_obara

2020/03/10 01:42

この仕様で提示されるアプリをお題に、swiftの勉強をしたいという意図でしょうか?それとも、アプリ完成が目的なのでしょうか?
coro123

2020/03/10 03:52

アプリ完成が目的です。
guest

回答1

0

performの使い方はリンク先を見てみてください。
データの受け渡しは、遷移元ViewControllerと遷移先ViewControllerでメンバー変数を作って置いて、それで受け渡すと良いかと。
これもリンク先に参考になるのが載っています。
遷移元のボタンが10個あると思うのですが、それぞれのTagに番号を入れて置いて、遷移先にそのTagの番号と遷移元のViewControllerのインスタンスを渡します。
遷移先で名前を選んだら、遷移元のViewControllerのインスタンスを使って、それのメンバー変数に名前と渡されたボタンのTag番号を返せばいいような気がします。

StoryBoard上でのセグエの設定の仕方とコードでの遷移

投稿2020/03/24 19:28

freemann

総合スコア264

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問