autocompleteTextViewのgetText()はspanbablestringBuilderを返しますか?
-
30-09-2019 - |
質問
アダプターとしてMatrixCursorを備えたAutoCompleTeTextViewがあります。 AutoCompleTeTextViewには、次のようにONITEMCLICKLISTENERがあります。
public class AutoCompleteListClickListner implements OnItemClickListener
{
private AutoCompleteTextView acView;
public AutoCompleteListClickListner(AutoCompleteTextView view)
{
this.acView = view;
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
/* tv is the selected view in the dropdown */
TextView tv = (TextView) ((LinearLayout) view).getChildAt(0);
Log.d(AndroidLogTag, "Before:>>>>" + this.acView.getText().toString());
this.acView.setText(tv.getText().toString());
Log.d(AndroidLogTag, "After:>>>>" + this.acView.getText().toString());
}
}
アイテムが選択されたとき、私はログにフォローするのがわかります
10-14 00:34:37.893: DEBUG/MyApp(19151): Before:>>>>android.database.MatrixCursor@4643e388
10-14 00:34:37.912: DEBUG/MyApp(19151): After:>>>>Ankit V Jain
ログが表示された場合、 Before
ログエントリ、 getText()
返品a SpannableStringBuilder
オブジェクトと toString()
そのうちのオブジェクト識別子を返します。
ドロップダウンアイテムをクリックする直前にあった自動コンプリートビューの実際のテキストを取得するにはどうすればよいですか?
解決 2
まあ、コードには常に別の方法(汚いまたは最高)があります。
Aを追加しました TextWatcher
AutoCompleTeviewに使用されます beforeTextChanged()
テキストコンテンツを記録し、それを再利用するイベント onItemClick()
!
他のヒント
キャストしてみてください SpannableStringBuilder
に CharSequence
所属していません StackOverflow