相关疑难解决方法(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?

我使用ArrayList和ArrayAdapter来记录AutoCompleteTextView的内容,我想在修改列表时动态刷新AutoCompleteTextView.在webviewClient中触发列表的修改.

但是,我的代码不起作用.只有在重新加载整个活动时才能更新AutoCompleteTextView.根本没有动态更新.任何人都可以帮我找出问题所在吗?

    final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, mHistory); //mHistory is the list of data
    adapter.setNotifyOnChange(true);
    mEditText1.setAdapter(adapter); //mEditText1 is the AutoCompleteTextView

    mWebView1.setWebViewClient(new WebViewClient() {

        public void onPageFinished(WebView view, String url){
            super.onPageFinished(view, url);

            if (!mHistory.contains(mWebView1.getUrl())){
                mHistory.add(mWebView1.getUrl());
                writeList(view.getContext(), mHistory, "history");  //this is to store the list elsewhere
            }
            adapter.notifyDataSetChanged();

        }

    });         
Run Code Online (Sandbox Code Playgroud)

android adapter autocompletetextview

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

notifyDataSetChanged不起作用?

我写下面的申请:

  • 有一个AutoCompleteTextView字段
  • 作为适配器我正在使用ArrayAdapter和ListArray
  • ListArray由一些常量字符串项和一个项组成,每当用户在字段中键入内容时,它们将动态更改

我使用TextChangedListener来更新最后一个列表项.但似乎,更新只发生一次.

我添加了一些代码.也许有人可以告诉我,我做错了什么.

public class HelloListView extends Activity 
{
    List<String> countryList = null;    
    AutoCompleteTextView textView = null;   
    ArrayAdapter adapter = null;

    static String[] COUNTRIES = new String[] 
    {
          "Afghanistan", "Albania", "Algeria", "American Samoa", "Andorra",
          "Yemen", "Yugoslavia", "Zambia", "Zimbabwe", ""
    };

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);        

        countryList = Arrays.asList(COUNTRIES);

        textView = (AutoCompleteTextView) findViewById(R.id.edit);
        adapter = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, countryList);
        adapter.notifyDataSetChanged();        
        textView.setAdapter(adapter);
        textView.setThreshold(1);

        textView.addTextChangedListener(new TextWatcher() 
        {

            public …
Run Code Online (Sandbox Code Playgroud)

android

2
推荐指数
1
解决办法
8194
查看次数