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

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

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

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

Q&A

解決済

1回答

4824閲覧

ほとんど同じ動作をするボタンを配列で書いてコードをシンプルにしたい

akawo

総合スコア23

Kotlin

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

0グッド

1クリップ

投稿2018/11/04 09:26

【目的】
ボタン1を押すとtextviewに1が入力される。ボタン2を押すとtextviewに2が入力されるというコードを書く際、
配列?を用いてコードをシンプルにしたい。

配列でできると思っていたのですが、ちょっとうまくいかないので引き続き方法を模索していくと共に、質問させていただきました、、、

【コード】
該当部分のみ抜粋

button1.setOnClickListener { input("1") } button2.setOnClickListener { input("2") } button3.setOnClickListener { input("3") } button4.setOnClickListener { input("4") } button5.setOnClickListener { input("5") } button6.setOnClickListener { input("6") } button7.setOnClickListener { input("7") } button8.setOnClickListener { input("8") } button9.setOnClickListener { input("9") } button10.setOnClickListener { input("10") } button11.setOnClickListener { input("11") } button12.setOnClickListener { input("12") } fun input(course: String){ if (servetext.text == ""){servetext.text = course} else{ if (receivetext.text == ""){receivetext.text = course} else{ if (thirdattacktext.text == ""){thirdattacktext.text = course} } } }

よろしければアドバイスいただきたいです!
何卒よろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

ボタンをリストにするとこんな感じですかね。
indexは0始まりになります。

Kotlin

1listOf( button1, button2, button3, button4, button5, button6, button7, button8, button9, button10, button11, button12 ) 2.forEachIndexed { index, button -> 3 button.setOnClickListener { 4 input((index + 1).toString()) 5 } 6}

投稿2018/11/05 01:13

YamakawaJunichi

総合スコア630

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

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

akawo

2018/11/05 13:34

動きました!!本当にありがとうございます。 初心者でコピペでアプリを作っておりましたが、配列等の基本的なところがないのでこれから勉強していきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問