以下を参考にしつつすすめています。
Install Jetbrains Plugin はボタンでした。M14 になるのかどうか。
ハロワ
以下見つつすすめてみます。
とりあえず、ふつーにハロワな project 作って Kotlin に convert する模様。メニューバーの Code -> Convert Java File to Kotlin File で云々、で良いのかどうか。
次に、メニューバーの Tools -> Kotlin -> Configure Kotlin in Project なのかどうか。これで build.gradle が Kotlin 対応になる模様。sync してどうなるか。
とりあえず
実行はできたので以下を確認しつつ控えを。
ええと、以下を追加したのですが翻訳エラーになっている模様。
import kotlinx.android.synthetic.activity_main.*
ええと、build.gradle の buildscript の中の dependencies に
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
入れても駄目で、plugin 見てみるに Kotlin Extensions For Android というソレを発見して入れてみたところ、問題解決できたようです。いやはや。
以下なカンジで View が参照できる模様。
main_text.setText("Hello World")
Button 付けてみた
レイアウトに main_button という id な Button を追加。以下なソレは動きました。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstaceState)
setContentView(R.layout.activity_main)
main_button.setOnClickListener(object: View.OnClickListener {
public override fun onClick(view: View) {
Toast.makeText(view.getContext(), "button clicked", Toast.LENGTH_LONG).show()
}
})
}
以下なリポジトリ確認してみます。
ソースは読めるんですが、build ができない。Java のバージョンが云々と言われてるのですが、さっきのハロワは動いたしなぁ。
以下で解決でした
とは言えその後も Gradle あたりの問題がいくつかあったりなんかして。
- com.android.support:appcompat-v7:22.2.1 な記述に修正
- buildToolsVersion の修正
- compileSdkVersion、targetSdkVersion の修正
ソース読み
MainActivity.kt はまだ Java 風味です。
getSupportFragmentManager().beginTransaction().add(R.id.container,
RssFragment.newInstance("http://rss.asahi.com/rss/asahi/science.rdf") as Fragment)
.commit()
as Fragment
は cast ってことにしておこう。
このリポジトリのソース確認はエントリを改めたいと思います。良さげなもくもくネタですし。