相关疑难解决方法(0)

Android EditText Gmail喜欢现场

我正在一个应用程序工作,我正在尝试创建一个像"To"字段的gmail,其中包含一个块,其中一旦添加就无法编辑,但只是完全删除(如附图中所示).如果它也有图像,那将是完美的. gmail

gmail android android-edittext

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

如何自定义Gmail芯片收件人字段中使用的"芯片"自动建议机制?

背景

我已经在Gmail收据字段中搜索了一种具有类似外观的方法,该字段允许以非常酷的方式自动填充项目:

在此输入图像描述

构建在Android框架中并负责此类的类称为" MultiAutoCompleteTextView ".

问题

MultiAutoCompleteTextView是非常基础的,但它没有足够的样本,教程和库来了解如何在Gmail和类似的东西上自定义它.

我想知道如何自定义它来处理任何类型的数据,并且我将完全控制它(例如添加,删除和获取它已自动完成的项目).

我试过的

我找到了下一步实现它的方法:

  1. 使用第三个库,如splitwise-TokenAutoComplete.缺点:它非常多,并且在某些设备上运行不佳.
  2. 创建我自己的方式(如图所示这里).缺点:需要很长时间,我可能需要处理与库相同的问题.
  3. 使用谷歌代码(在这里找到).缺点:它真的不可定制.

我决定使用#3(谷歌的芯片库).

目前获取Google图书馆使用的联系人列表的代码:

public List<RecipientEntry> doQuery() {
    final Cursor cursor = mContentResolver.query(mQuery.getContentUri(), mQuery.getProjection(), null, null, null);
    final LinkedHashMap<Long, List<RecipientEntry>> entryMap = new LinkedHashMap<Long, List<RecipientEntry>>();
    final List<RecipientEntry> nonAggregatedEntries = new ArrayList<RecipientEntry>();
    final Set<String> existingDestinations = new HashSet<String>();
    while (cursor.moveToNext())
        putOneEntry(new TemporaryEntry(cursor, false /* isGalContact */), true, entryMap, nonAggregatedEntries,
                existingDestinations);
    cursor.close();
    final List<RecipientEntry> entries = new ArrayList<RecipientEntry>();
    {
        for (final …
Run Code Online (Sandbox Code Playgroud)

android autocomplete android-edittext multiautocompletetextview

12
推荐指数
1
解决办法
4035
查看次数

将预定义值设置为MultiAutoCompleteTextView:Android

我必须设置一些预定义的值MultiAutoCompleteTextView(在我从建议下拉列表中选择之前).就好像,就像你从下拉列表中选择了2-3个项目一样.设置这些预定义值后,我再次希望从列表中继续正常的过滤过程并将其添加到MultiAutoCompleteTextView.

它看起来像这样

Predefined1, Predefined2, Predefined3,  
Run Code Online (Sandbox Code Playgroud)

如果我像你一样使用setText(...)TextView或者EditText使用逗号分隔的值,它将它视为1个整个单词并在末尾添加逗号.

请建议我如何实施它.

编辑:

好的.让我详细解释一下.我试图在这个这个中实现.但是,另外一个要求是,除了从建议下拉菜单中选择值之外,我还需要在显示View时设置一些预定义的值,当我写东西并按下输入/隐藏键盘时,无论我写的是什么都应转换为按钮文字.如果不可能,还有其他选择吗?请建议.

编辑:

在此输入图像描述

这些值应该在视图中,而不从下拉列表中选择.之后,无论用户从建议中添加哪个用户,都应将其添加到列表中.

这就像EditText在用户开始输入之前设置提示或一些文本.

谢谢.

java android autocomplete custom-controls android-widget

4
推荐指数
1
解决办法
2340
查看次数