Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MultiAutocompleteTextView事件_Java_Android_Events_Multiautocompletetextview - Fatal编程技术网

Java MultiAutocompleteTextView事件

Java MultiAutocompleteTextView事件,java,android,events,multiautocompletetextview,Java,Android,Events,Multiautocompletetextview,我尝试使用MultiAutocompleteTextView,每当我在textview中键入一个字符时,就会触发一个事件,或者在键入2-3个元素后,再次触发该事件 我使用multiautocomplete的原因是我还需要自动完成功能 是否有这样一个事件可以在输入每个字符或2-3个字符后触发?谢谢 是的,您可以使用添加TextWatcher和TextChangedListener来编辑文本,如下所示: myEditText.addTextChangedListener(new TextWatc

我尝试使用MultiAutocompleteTextView,每当我在textview中键入一个字符时,就会触发一个事件,或者在键入2-3个元素后,再次触发该事件

我使用multiautocomplete的原因是我还需要自动完成功能


是否有这样一个事件可以在输入每个字符或2-3个字符后触发?谢谢

是的,您可以使用添加TextWatcher和TextChangedListener来编辑文本,如下所示:

  myEditText.addTextChangedListener(new TextWatcher() {
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            //check count or count in edit text and do something
        }

        @Override
        public void afterTextChanged(Editable arg0) {
        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }
    });

您所需要的只是一个由
setAdapter()
方法设置的
Adapter
及其
Filterable
功能,为了避免从头开始编写自己的
过滤器
,您可以使用
SimpleCursorAdapter
FilterQueryProvider
干杯!为了获得更好的理解,您能给我看一下代码示例吗?请看我在这里关于如何为AutoCompleteTextView执行此操作的回答,similat适配器可用于MultiAutoCompleteTextView。我找到了一个更简单的解决方案。有一个事件可以处理此问题:addTextChangedListener。但是现在我正在试着看我是否只能在输入3个字符后才能启动我的方法。这是一个糟糕的解决方案,请参阅下面的我的评论如果你使用TextWatcher,那么为什么要使用MultiAutoCompleteTextView?如果TextWatcher足够好,那么使用EditText,很快就会进行向下投票,然后…@pskink,因为正如我提到的,我还需要自动完成功能。我正在尝试获取文本元素中的FB位置。例如,我键入1个字符,方法将被调用,并将显示以该字符开头的所有位置。我现在还不知道该怎么做,因为每当我在前端调用该方法时,它都会转到后端,然后为该方法调用facebook api,但这大约需要2-3秒。因此,对于我输入的每个字符,如果要调用该方法,对于3-4个字符,时间太长,然后使用适配器,正如我在第一篇评论中所说的,将尝试使用相同的方法:)但就像我提到的,在我的例子中,这会花费太多的时间在输入每个字符后触发事件。d这就是为什么我考虑在输入2-3个字符后触发事件,考虑使用textwatcher@pskinkcall setThreshold(3)并使用自定义FilterQueryProvider的原因,它只会起作用,根本不涉及textwatcher