小编Fla*_*ash的帖子

为Android排序ArrayAdapter

我有一个MultiAutoCompleteTextView,它允许您输入多个条目并显示自动填充建议.我提交数据时出现问题.我将任何输入的字符串添加到下拉列表中,但我尝试对数据进行排序失败.在提交时执行的代码:

final private Comparator<String> comp = new Comparator<String>() {
    public int compare(String e1, String e2) {
        return e1.toString().compareTo(e2.toString());
    }
};

((ArrayAdapter<String>) autoCompleteView.getAdapter()).add(getString());                    
((ArrayAdapter<String>) autoCompleteView.getAdapter()).sort(comp);  
Run Code Online (Sandbox Code Playgroud)

单击autoCompleteView时发生的代码:

        view.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                adapter.getFilter().filter(null);
                //adapter.sort(comp);
                view.showDropDown();
            }
        });
Run Code Online (Sandbox Code Playgroud)

任何人都可以发现我正在做的事情有什么问题吗?

编辑:在收集@Sam的更改后的更多信息

private ArrayList<String> array = new ArrayList<String>();
private ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,
        array);

private void setUpAutoComplete(final MultiAutoCompleteTextView view)
{
    array.add("test string");   // this is successfully added to the drop down list
    Collections.sort(array, comp);
    adapter.notifyDataSetChanged();
}

private void onSubmit()
{ …
Run Code Online (Sandbox Code Playgroud)

sorting android android-arrayadapter drop-down-menu

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