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

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

新規登録して質問してみよう
ただいま回答率
85.49%
Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

1393閲覧

[Android Studio] AleartDialogで分岐処理をしたい

退会済みユーザー

退会済みユーザー

総合スコア0

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2019/07/16 00:49

こんにちは。

画面にダイアログを表示して分岐処理をしたい(ユーザーに分岐を選択させたい)のですが、下記のコードだと、ダイアログの選択を待たずに最後の行のprintln()が先に実行されてしまいます。(ダイアログは表示されている。)

Kotlin

1class MainActivity : AppCompatActivity() { 2 override fun onCreate(savedInstanceState: Bundle?) { 3 super.onCreate(savedInstanceState) 4 5 var bool = false 6 AlertDialog.Builder(this) 7 .setPositiveButton("yes") { dialogInterface, i -> 8 bool = true 9 } 10 .setNegativeButton("no") { dialogInterface, i -> 11 bool = false 12 } 13 .create() 14 .show() 15 println(bool) // どちらを選んでもfalseが先に表示されている 16}

下記のようなダイアログ内に処理を書く方法ではなく、あくまでダイアログは選択に使いたい、という状況です。

KotlinAlertDialog.Builder(this)

1.setPositiveButton("yes") { dialogInterface, i -> 2 bool = true 3 println(bool) 4} 5.setNegativeButton("no") { dialogInterface, i -> 6 bool = false 7 println(bool) 8}

ダイアログから値を取得はできないのでしょうか?調べても手掛かりがつかめず困っています。
よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

処理フローが止まるダイアログのことを「モーダルダイアログ」と呼んだりします.
Android は UI スレッドを止めてはならないことになっていますので, モーダルダイアログは無かったと思います.
「モーダルダイアログのように動作させる」類でしたら記事があると思いますので, お探しになっては如何でしょうか.

投稿2019/07/16 02:07

jimbe

総合スコア12612

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

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

退会済みユーザー

退会済みユーザー

2019/07/17 00:01

回答通り、結局、Androidで処理を一時停止させることはできないと判断し、別の方法にしました。 回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問