Android MultiAutoCompleteTextView自定义分词器就像whatsapp GroupChat

问题描述:

我想为@创建自定义分词器像whatspp功能(当打开组和写@然后打开弹出列表和用户可以选择any.also用户可以删除该字符串@ 。Android MultiAutoCompleteTextView自定义分词器就像whatsapp GroupChat

我搜索很多事情。可是我已经找到像Twitter的搜索功能Example like twitter

但在这一点,当用户可以写@那么不显示列表的弹出窗口。用户可以后@写soemthing然后根据打字,弹出窗口将显示搜索结果。

我想要显示这样的方法:

感谢先进。

enter image description here

+0

http://*.com/a/18486927/3850595 –

+0

[检查此链接](https://android-arsenal.com/tag/197),大量的例如可用.. [最好的一个](https://android-arsenal.com/details/1/2953) –

+0

@NiranjPatel我想添加@并打开与autocompletetext视图相同的自定义列表弹出窗口。 – dipali

我得到了我的问题的解决方案。

我已为multiautocompletetextview创建了自己的自定义视图,并在@sign之后为打开的弹出框添加了performFiltering方法。

public class KcsMultiAutoCompleteTextView extends MultiAutoCompleteTextView { 
    public KcsMultiAutoCompleteTextView(Context context) { 
     super(context); 
    } 

    public KcsMultiAutoCompleteTextView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public KcsMultiAutoCompleteTextView(Context context, AttributeSet attrs, int defStyleAttr) { 
     super(context, attrs, defStyleAttr); 
    } 

    @Override 
    protected void performFiltering(CharSequence text, int start, int end, int keyCode) { 
     if (text.charAt(start) == '@') { 
      start = start + 1; 
     } else { 
      text = text.subSequence(0, start); 
      for (int i = start; i < end; i++) { 
       text = text + "*"; 
      } 
     } 
     super.performFiltering(text, start, end, keyCode); 
    } 

} 
+0

嗨@dipali ....可以解释我们如何在每次使用此自定义类编写@时在API中从运行时获取列表? –

+0

@MohammadMisbah只需使用此自定义类并设置textview,然后它将在自定义类arraylist中执行过滤器。 – dipali

请参阅TokenAutoComplete,我希望它帮