今更ながらKotlin Android Extensionsを入れたら楽になったよというお話

Kotlinで書いているんですけどね

SUMG(サムジー)という、社内で有志が集まって好きなアプリや社内システム開発のお手伝いをしているグループに参加しているのですが、そこでのお話です。
元々SUMGは別に強制されている訳ではなくて、アウトプットはするけど自分たちの勉強にもなるように使ったことないツールとか言語使おうという形で始まっています。
だってその方が面白いですし。
ということで、SUMGの作るAndroidアプリはKotlinで書いています。

サーバーサイドが必要な時は大体Node.jsですね。
最近はTypeScriptで書くように進めていますが。

findViewByIdは面倒だったので今更導入した

存在は知っていたのですが、最初はやりなれた方法でアプリをリリース(社内向けなので社内にしか展開していません)するのが先決で今まで導入していなかったのですが、ようやく導入しました。
以下、導入手順

プラグインのインストール

まずはAndroid Studioのプラグインからインストール。
Kotlinと全く同じようなやり方ですね。
Kotlin使っている人には説明不要だと思いますが…

build.gradleの変更

buildscriptを編集します
dependenciesに
classpath “org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version”
を追加します。

buildscript {
    ext.kotlin_version = "1.0.0-beta-2423"
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
    }
}

こんな感じになりますね。

使うファイルでimportする

今回はフラグメントで使ったのでこうなりました。

import kotlinx.android.synthetic.<使うフラグメント名>.view.*

フラグメントのファイル名がfragment_main.xmlの場合は

import kotlinx.android.synthetic.fragment_main.view.*

こうなります。

idがeditTextの場合

findViewByIdがなくなってかなりすっきりします。

rootView?.editText?.setText("hoge")

かなり楽になったので、前から導入しておけばよかったという感じですね…

About the author

Ryu Seino
Ryu Seino

2015年入社。
コンシューマー向けWebサービス、商社の基幹システムなどを担当した後、2016年の途中から管理部システム課に所属となる(ちなみに一人しかいない)。
好きな動物はペンギン🐧
都内にて一人飲酒業務に精を出していたが、諸事情により活動休止。
最近の趣味としては銭湯(含スーパー銭湯)に行く事と水族館に行く事。

Add Comment

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Ryu Seino By Ryu Seino

最近の投稿

アーカイブ

カテゴリー

タグクラウド

コーポレートサイト