AndroidのUtilsクラスまとめ
はじめに
androidのUtilsをまとめた資料が見当たらなかったので作りました。 android.*パッケージに含まれるものだけまとめています。
TextUtils
文字列操作用Utils。
isEmpty()
とかequals()
とかよく使う。
文字列操作系も大体揃っていて便利。
isGraphic()
とかellipsize()
とか使ったことないけど気になるメソッドもある。
SupportLibrary
に最新版との差分をまとめたTextUtilsCompat
がある。
http://developer.android.com/reference/android/text/TextUtils.html
http://developer.android.com/reference/android/support/v4/text/TextUtilsCompat.html
NavUtils
Up動作を実装するのに使う。 これだけ使っても思ったように実装できないことが多い気がする。 Up動作の実装については以前まとめた。 http://developer.android.com/reference/android/support/v4/app/NavUtils.html
DatabaseUtils
DBとCursor
を扱うためのUtils。
Cursor
の中身をContentValues
に入れるメソッドが大量にある。
concatenateWhere()
という2つのwhere句をAND
でつないでくれるメソッドが微妙に便利。
SupportLibrary
に最新版との差分をまとめたDatabaseUtilsCompat
がある。
http://developer.android.com/reference/android/database/DatabaseUtils.html
http://developer.android.com/reference/android/support/v4/database/DatabaseUtilsCompat.html
DateUtils
formatDateRange()
とformatDateTime()
で色々な日付表現ができる。
でも大抵はSimpleDateFormatで事足りるイメージ。
非推奨のメソッドもあるので、使う際は注意。
http://developer.android.com/reference/android/text/format/DateUtils.html
URLUtil
URLを扱うためのUtils。
ただしURL
型ではなくString
のみ受け付ける。
有効なURLかどうかを判定してくれるisValidUrl()
やウェブURL判定のisNetworkUrl()
、isHttpsUrl()
あたりは使えそう。
なぜかこいつだけ名前がUtil。
http://developer.android.com/reference/android/webkit/URLUtil.html
PhoneNumberUtils
電話番号を扱うためのUtils。
Intent
から電話番号を取得するgetNumberFromIntent()
がtel:
もsip:
も対応してて便利。
表示用に日本向け(!)に整形してくれるformatJapaneseNumber()
というのもあるらしい。
isDialable()
とか便利そうだけどちゃんと動くのか未確認…。
http://developer.android.com/reference/android/telephony/PhoneNumberUtils.html
AnimationUtils
リソースからアニメーションの生成をしてくれるUtils。
loadInterpolator()
くらいしか使ったことがない…。
http://developer.android.com/reference/android/view/animation/AnimationUtils.html
ThumbnailUtils
サムネイルの生成Utils。 なんと画像だけでなく動画からもサムネイルの生成をしてくれる。 ただし、動画の場合はサイズが2種類しか選べない。 画像からは指定サイズで作れるから二重に生成すれば良いのだが…。 http://developer.android.com/reference/android/media/ThumbnailUtils.html
TouchUtils
タッチイベントをシミュレートするためのUtils。 ActivityInstrumentationTestCase2と合わせてUIテストに使う。 http://developer.android.com/reference/android/test/TouchUtils.html
GLUtils
OpenGL
扱うときに使うっぽいUtils。
使ったことがない…。
http://developer.android.com/reference/android/opengl/GLUtils.html
GestureUtils
ジェスチャー関連の解析とかをやるときに使うらしい。 使ったことがない…。 http://developer.android.com/reference/android/gesture/GestureUtils.html
DebugUtils
DebugUtils.isObjectSelected()
メソッドしかない。
ログ出すときにオブジェクトの状態がANDROID_OBJECT_FILTER
という環境変数の設定とマッチするかチェックしてくれる。
ANDROID_OBJECT_FILTER
環境変数ってどうやってセットするんだ?
http://developer.android.com/reference/android/util/DebugUtils.html