Kotlinでおみくじアプリ作ってみました。
actibity_main.xml
おみくじの結果を表示するテキストビューとおみくじプログラムを起動させるためのボタンを配置しました。
ボタンのonClickプロパティにはgetOmikujiを入力しておきます。
このgetOmikujiが関数名として使用されます。
テキストビューのIDはresultTextViewとしておきましたが、これがオブジェクト名として機能しますので、スクリプト内ではresultTextView.textなど、プロパティと組み合わせて指定していきます。
strings.xml
エラーが出るので、result_textとbutton_textを定義して解決します。
1 2 3 4 5 |
<resources> <string name="app_name">MyOmikujiApp</string> <string name="result_text">...</string> <string name="button_text">今日の運勢は</string> </resources> |
MainActivity.kt
メインのスクリプトです。randomをうまく使います。
デバック用にLog.nも使ってみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
package com.example.myfirstapp import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.view.View import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } fun getOmikuji(view: View){ // 運勢のリストを作成する val resultList = listOf("大吉", "中吉", "小吉", "末吉", "凶", "大凶") // リスト番号をランダムで決める val resultNumber = (0..resultList.size-1).random() // Logcatにリスト番号を出力する Log.v("MainActibity", "resultNumber : $resultNumber") // 決められたリスト番号に該当する運勢を出力する resultTextView.text= resultList[resultNumber] } } |