相关疑难解决方法(0)

由CursorLoader支持的AutoCompleteTextView

因此,我无法在使用自定义的同时扩展MultiAutoCompleteTextView和支持它.这个问题特别随着电话而上升.在其中有一个游标作为参数方法具有在第一调用此方法有效的和未封闭的光标.但是,后续调用会导致空游标或关闭游​​标.我猜这与管理如何有关. CursorLoaderTokenizermAdapter.setCursorToStringConverter();convertToString()LoaderManagerCursorLoader

如果我将setCursorToStringConverter()方法注释掉,那么我会根据我在此视图中输入的文本看到可用选项列表.但是,由于没有convertToString()实现terminateToken()方法,因此自定义方法Tokenizer不接收我想要的字符串,而是接收游标对象的代表字符串,因为游标尚未用于获取当前字符串值在得到的查询中的所需列的.

任何人都已经能够实现三类的组合(CursorLoader/LoaderManger,MultiAutoCompleteTextView,和Tokenizer)?

我是否朝着正确的方向前进,或者这根本不可能?

我已经能够实现一个自定义MultiAutoCompleteTextView支持SimpleCursorAdapter的自定义Tokenizer.我只是想知道是否有可能使用a来实现它CursorLoader,因为严格模式抱怨光标MultiAutoCompleteTextView没有被明确关闭.

任何帮助将不胜感激.

public class CustomMultiAutoCompleteTextView extends MultiAutoCompleteTextView
  implements LoaderManager.LoaderCallbacks<Cursor> {

    private final String DEBUG_TAG = getClass().getSimpleName().toString();
    private Messenger2 mContext;
    private RecipientsCursorAdapter mAdapter;
    private ContentResolver mContentResolver;
    private final char delimiter = ' ';
    private CustomMultiAutoCompleteTextView mView;

    // If non-null, this is the current filter the …
Run Code Online (Sandbox Code Playgroud)

android stringtokenizer autocompletetextview android-cursorloader

33
推荐指数
1
解决办法
1万
查看次数

AutoCompleteTextView showDropDown 不起作用

我正在异步加载数据,我有一个 AutoCompleteTextView,当数据加载时,它会在适配器中设置。当我单击搜索视图时,我想向用户显示所有结果。我可以确认 onClickListener 正在被调用,但结果仅在我第二次单击时显示。

  private View.OnClickListener onAutoCompleteClickListener = new View.OnClickListener(){
   @Override
    public void onClick(View v) {
        autoCompleteTextView.setText(" ");
        searchAdapter.notifyDataSetChanged();
        autoCompleteTextView.showDropDown();
    }
};
Run Code Online (Sandbox Code Playgroud)

android autocompletetextview

5
推荐指数
1
解决办法
7160
查看次数

Android showDropDown onCreate不起作用

所以我有一个自动完成视图,当我输入时显示下拉...但我希望在活动开始时显示下拉列表.所以我发现这个答案说使用showDropDown()应该工作.当在任何TouchListener或任何其他用户触发的事件上调用时,它确实适用于我的情况.但是如果我直接在onCreate()中使用它就无法工作...我的onCreate()中的以下代码可以工作

    final AutoCompleteTextView actv = (AutoCompleteTextView)findViewById(R.id.autoCompleteUserName);
    String[] users = getResources().getStringArray(R.array.users);
    ArrayAdapter<?> adapter = new ArrayAdapter<Object>(this,R.layout.compose_ac_list_item,users);
    actv.setAdapter(adapter);

    actv.setOnTouchListener(new View.OnTouchListener(){

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // WORKS IF USED ON TOUCH
            actv.showDropDown();
              return false;
        }
    });
Run Code Online (Sandbox Code Playgroud)

以下不起作用

    final AutoCompleteTextView actv = (AutoCompleteTextView)findViewById(R.id.autoCompleteUserName);
    String[] users = getResources().getStringArray(R.array.users);
    ArrayAdapter<?> adapter = new ArrayAdapter<Object>(this,R.layout.compose_ac_list_item,users);
    actv.setAdapter(adapter);

    actv.showDropDown();
Run Code Online (Sandbox Code Playgroud)

android autocompletetextview

3
推荐指数
1
解决办法
2805
查看次数