Unityプラグインを開発しよう:その13:IndicatorView(Android版) | U-CREATES.の「たぶん」まいにち制作中。

U-CREATES.の「たぶん」まいにち制作中。

◆Webサイト、スマートフォンアプリ制作をしている個人事業主のブログです。
◆オフィシャルWebサイトはこちら。
http://u-creates.com/

前回はIndicatorViewプラグイン(iOS版)を実装し、iOS端末でネットワーク通信等で用いられるインジケータを表示しました。今回はIndicator機能のプラグイン(Android版)を開発します。

【機能概要】
◆アプリケーションがネットワーク通信している際に、Androidが提供しているインジケータの表示/非表示を制御する機能です。

【IndicatorViewPlugin(Android版)を実装する】
◆以前紹介したAndroidプラグイン(Android/Java版)を用いて実装しました。
Unity側の実装は、AndroidJavaObjectを用いて、Javaで実装されたAndroidプラグインをインスンタンス化した後に表示/非表示のメソッドをコールしています。パラメータも存在しないことから今まで紹介してきたプラグインの中で、最も簡単な実装になっています。
◆Android版の実装は、AndroidSDKから提供されているDialogProgressBarを組み合わせています。これらの2つのViewを、View同士を重ねて表示する機能を提供しているFrameLayoutを用いて表示しています。端的に述べれば、AndroidSDKから提供されているViewやLayoutのプロパティへ値をセットするだけという、いかにもAndroidSDKの使い方を踏襲しただけの、かなり簡単な実装になっています。
◆他のAndroidプラグインと同様に、Androidの場合はUI制御の処理はAndroidのUIスレッド(メインスレッド)で表示処理を実行しなければならないという制約が存在するため、ActivityのrunOnUiThread経由で表示/非表示の処理をするところもポイントですね。

実行するとこのように呼び出されます。


いかにもAndroid端末のアプリという感じがしますね。
iOS版と同様、かなり簡単に実装できるので、自作してみはいかがでしょうか。