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

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

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

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

解決済

swift if文について

dandadan
dandadan

総合スコア14

Swift

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

1回答

0評価

0クリップ

194閲覧

投稿2022/01/19 07:19

編集2022/01/19 19:16

イメージ説明調べたところ
if文の条件はbool型でtrueかfalseしかないということはわかったのですが

もしtrue(false)なら実行する ではなく
例えば
もしtrueがfalseになったら実行する という書き方はできますか?

それっぽく書くなら

swift

func Z(z: Bool) { if z == true -> false { print("zはtrueからfalseになりました") } }

といった具合でしょうか

補足
今回の質問では
例えば、スマホにタッチして指を離すという動作をした際に
スマホにタッチ→true
指を離す→false
のように、一連の流れが起こった際にif文を実行したいと考えております。

なので、hoshiさんのご意見を元に訂正すると
false(現在の値)→今回の値 { true(一時的に)→false(最終的に) } といった表現をしたいと考えております。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

hoshi-takanori

2022/01/19 07:24

前回の値が true で、今回の値が false なら、という条件を書きたいなら、前回の値を何らかの形で記憶する必要があるかと。
dandadan

2022/01/19 07:48

なるほど。ありがとうございます。 今回の質問では 例えば、スマホにタッチして指を離すという動作をした際に スマホにタッチ→true 指を離す→false のように、一連の流れが起こった際にif文を実行したいと考えております。 なので、hoshiさんのご意見を元に訂正すると false(現在の値)→今回の値 { true(一時的に)→false(最終的に) } といった表現をしたいと考えております。
hoshi-takanori

2022/01/19 08:07

スマホのどこにタッチしたことを検出したいかによりますが、普通のボタンタップなら touchUpInside イベント、その他の view へのタッチなら UITapGestureRecognizer を使いますね…。
dandadan

2022/01/19 08:17

なるほど… 画面へのタッチのつもりでしたが、そもそもスマホへのタッチの際にはそのように書くのですね ありがとうございます。 ということは仮に、今回の質問がスマホと関係なかったとして 質問のようにif文を記述することはできないということでしょうか?
hoshi-takanori

2022/01/19 08:28

できますよ。というか、画面タッチでもやりたいことによっては自分でもっと細かくイベントに対応することもできます。 今回の質問に関しては、抽象的なレベルで答えるなら「できる」、具体的な答えが欲しいなら何をしたいのかをもっと具体的に書いて欲しい、ってことです。
dandadan

2022/01/19 08:39

なるほど! ご丁寧にありがとうございます。 具体的に書きますと 現在、ほぼ初心者なのですがswiftでgooglemapAPIを用いたゲーム開発の補助をしています。 そこで、zoomlevelの取得が課題なのですが ピンチアップやスクロールをした瞬間(画面に指が触れた瞬間)にzoomlevelを取得することはできたのですが 本当に欲しいzoomlevelはピンチアップした後(zoomlevelが変わった後)の数値になり そこで、スマホから指を離した瞬間にzoomlevelを取得するコードを書きたいのです。 それで、if文で質問のようにコードが書ければそれが叶うのではないかと思って調べたのですが ヒットしなかった為に質問をしました。
dandadan

2022/01/19 08:57

試してみます!!! ご丁寧にありがとうございます!!
dandadan

2022/01/19 09:07

idleATで解決しました!!!! めっちゃ長い時間悩んでたので、本当に嬉しいです ありがとうございました!!! ここだとベストアンサーにできないので、よかったら回答の方に一言お願いします! (if文の件ではありませんが、そもそもの問題が解決したので本当に感謝です。)

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Swift

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