AccountManager からアカウント一覧を取ってきて、それの account.name をサジェストに使うという機会が割りと多かったので、ライブラリとして公開しました。
https://github.com/KeithYokoma/AccountAutoCompleteEditText
今は未だ単純な実装しかないですが、アカウントの種類に応じてサジェストするリストの中身をコントロールできる仕組みが有ります。
使い方は以下のとおり。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <jp.yokomark.widget.account.autocomp.AccountAutoCompleteEditText android:id="@+id/any" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/label_account_type_any" app:accountType="any"/> </RelativeLayout>
app:accountType
属性が肝になっていて、1.0.0 では以下の 3 つの値を用意しています。
any
AccountManager にあるものをとりあえず全部サジェスト。email
メールアドレスで登録してあるものをサジェスト。phoneNumber
電話番号で登録してあるものをサジェスト。
Maven Repository もおいてあるので、そこからお使い下さい。