Databindingを使う上で何を考えないといけないかというと、BaseObservableを継承したviewModelから、なんの情報をxmlにBindしたいのか?です。先程のListをBindすることを考えます。それともう一つ、考えたいのが、ユーザーがSpinner選択したときのコールバックをviewModelの内部で受け取れるようにするとMVVMが実現できてよさそうです。上記を実現するために、下記のようにしてみました。viewModelからListを渡しています。個人的にはちゃんと動くのか自信がなかったのですが、内部でうまくCharSequence[]へ変換して、Adapterへの設定もやってくれます。使ってやるしかないかなと思います。続いてコールバックについて。コールバック部分はAdapterViewBindingAdapterというクラスにandroid:onItemSelectedが用意されているので、それにたいして、ラムダ式で設定します。スピナーのsetOnItemSelectedListenerには、AdapterView.OnItemSelectedListener()を渡す必要があるのですが、このリスナーは下記のように2つのメソッドを持っているので、そのままではxmlに渡すことができません。そこで、上記のBindingAdapterを使うことで、それぞれ別々にリスナーを設定することを可能にしています。これを使うとRuntimeExceptionになるようです。サポーしてないからってException投げるってどうなんでしょう。Lintでエラー警告だすとかできないものでしょうか。まとめスピナーってあまり使う機会がないようで、たまーに使いますよね。(IntelliJ)で、メソッド引数のヒント表示をOFFにする方法をご紹介します。あるので間違えないように。作ってみた最近ChatBotを開発していて、文字入力を音声でやりたいという要件があった。Dectationである。DAY_OF_YEARの違いとある日付が今日と同じかどうかの関数(isToday())を作った際に、わからなかったのでまとめます。このエラーが発生する原因は下記です。まとめAndroid開発でEditTextのあれどうだっけ?を解決します。記事を読むバンクーバー、スタートアップ企業で得たことどうもノリです。簡単なタイマーを作ってみた。これまではAndroidでタイマー機能を実装するのに、HandlerとRunnableを使ってやっていたかと思います。重い処理の見つけ方アプリ開発やサーバーの開発をしていると、どうも処理が遅いなぁと感じ、どこに原因があるのか調べたいという場合があるかと思います。アルゴリズムの学習を始めていこうと考えています。Norio(@nrg519)SoftbankでAndroidアプリ作ってます。