Processing math: 100%

初心者用kotlin

kotlinのメモです。

1564 views

セットアップ IntelliJの場合

[File]->[New]->[Project]を選択する。

左のペインからGradleを選択し、[kotlin/JVM]を選択する

プロジェクト名を入力して[Finish]ボタンを押下する。

build.gradleを開き、dependenciesに以下を記述する。

  1. implementation 'io.reactivex.rxjava2:rxjava:2.1.14'
  2. implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
  3. implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'

src/main/kotlin/app.ktを作成し、以下を記述してrxjavaが動作するか検証する。

コピーできるように、ソースコードを以下に書いておく。

  1. import io.reactivex.rxkotlin.toObservable
  2. fun main(args:Array<String>){
  3. val list = listOf(1, 2, 3)
  4. list.toObservable().subscribe{
  5. println(it.toString())
  6. }
  7. }

セットアップ androidの場合

build.gradleのdependenciesに以下を記述する。

  1. implementation 'io.reactivex.rxjava2:rxjava:2.1.14'
  2. implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
  3. implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'

全体は以下となる。

  1. dependencies {
  2. implementation fileTree(dir: "libs", include: ["*.jar"])
  3. implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
  4. implementation 'androidx.core:core-ktx:1.3.0'
  5. implementation 'androidx.appcompat:appcompat:1.1.0'
  6. implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
  7. testImplementation 'junit:junit:4.12'
  8. androidTestImplementation 'androidx.test.ext:junit:1.1.1'
  9. androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
  10. implementation 'io.reactivex.rxjava2:rxjava:2.1.14'
  11. implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
  12. implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'
  13. }

記述した後、以下のアイコンをクリックすると、gradleの変更が反映される。

簡単なサンプルで動作確認

ボタンをクリックしたらrxjavaが動作するサンプルを以下に記す。

  1. package com.example.myapplication
  2. import androidx.appcompat.app.AppCompatActivity
  3. import android.os.Bundle
  4. import android.util.Log
  5. import android.widget.Button
  6. import android.widget.Toast
  7. import io.reactivex.rxkotlin.toObservable
  8. class MainActivity : AppCompatActivity() {
  9. override fun onCreate(savedInstanceState: Bundle?) {
  10. super.onCreate(savedInstanceState)
  11. setContentView(R.layout.activity_main)
  12. //ここから
  13. val button = findViewById<Button>(R.id.button)
  14. button.setOnClickListener{
  15. rxjavaTest()
  16. Toast.makeText(this, "クリックされた", Toast.LENGTH_LONG).show()
  17. }
  18. }
  19. fun rxjavaTest() {
  20. val list = listOf(1, 2, 3)
  21. list.toObservable().subscribe{
  22. Log.d("rxjavatest", it.toString())
  23. }
  24. }
  25. }

サンプル解説

Page 18 of 36.

前のページ 次のページ



[添付ファイル]


お問い合わせ

プロフィール

すぺぺぺ

自己紹介

本サイトの作成者。
プログラムは趣味と勉強を兼ねて、のんびり本サイトを作っています。
フレームワークはdjango。
ChatGPTで自動プログラム作成に取り組み中。

サイト/ブログ

https://www.osumoi-stdio.com/novel/

ツイッター

@darkimpact0626