有人可以指出我正确的方向如何在EditText中做这些气泡或标签,就像你在添加圆圈或联系人时想要在Stream for Google+中撰写内容时所看到的那样?Rectangle是一个自动完成的edittext.
我正在一个应用程序工作,我正在尝试创建一个像"To"字段的gmail,其中包含一个块,其中一旦添加就无法编辑,但只是完全删除(如附图中所示).如果它也有图像,那将是完美的.

我一直在寻找,但找不到任何答案.我正在尝试实现的是类似于ICS gmail应用程序的撰写屏幕中的"To"字段的EditText.
这是描述我想要的图像:

我正在考虑扩展EditText和实现我自己的自定义EditText类,但我不确定如何做到这一点,即使这是最好的解决方案.有什么想法吗?
有没有办法我们可以将自定义drawable(从资源)设置为TextView的span,特别是ClickSpan?
谷歌通过覆盖跨度的updateDrawState()来返回许多关于禁用高亮或更改颜色等的答案,但是我没有看到如何将drawable设置为背景.
我在DynamicDrawableSpan中看到了一种可能性,但我无法使其与ClickableSpan一起使用.这是我的代码:
public class MyDynamicDrawableSpan extends DynamicDrawableSpan
{
private Context c;
public MyDynamicDrawableSpan(Context context) {
super();
c = context;
}
@Override
public Drawable getDrawable() {
Resources res = c.getResources();
Drawable d = res.getDrawable(R.drawable.span_background);
return d;
}
Run Code Online (Sandbox Code Playgroud)
}
这就是我使用它的方式:
SpannableStringBuilder ssb = new SpannableStringBuilder(text);
MyDynamicDrawableSpan ddSpan = new MyDynamicDrawableSpan(getApplicationContext());
...
ssb.setSpan(ddSpan, start, end, 0);
ssb.setSpan(new ClickableSpan(...
Run Code Online (Sandbox Code Playgroud)
这不起作用.它只会使跨度不可见.有什么好主意吗?

该图片来自一个名为的应用程序kakao story.
假设有一个帖子包含任何sns应用程序的评论列表.
单击注释时,它会在编辑文本中插入评论者的用户名以指示my new comment is a reply to the user.
(您不能多次添加相同的名称.)
当您按退格键删除名称时,组成名称的整个字符(例如,示例中的chabeau)将被1-backspace删除.
我试图模仿行为,并想要一些指针如何实现它或搜索什么.
我必须设置一些预定义的值MultiAutoCompleteTextView(在我从建议下拉列表中选择之前).就好像,就像你从下拉列表中选择了2-3个项目一样.设置这些预定义值后,我再次希望从列表中继续正常的过滤过程并将其添加到MultiAutoCompleteTextView.
它看起来像这样
Predefined1, Predefined2, Predefined3,
Run Code Online (Sandbox Code Playgroud)
如果我像你一样使用setText(...)TextView或者EditText使用逗号分隔的值,它将它视为1个整个单词并在末尾添加逗号.
请建议我如何实施它.
编辑:
好的.让我详细解释一下.我试图在这个和这个中实现.但是,另外一个要求是,除了从建议下拉菜单中选择值之外,我还需要在显示View时设置一些预定义的值,当我写东西并按下输入/隐藏键盘时,无论我写的是什么都应转换为按钮文字.如果不可能,还有其他选择吗?请建议.
编辑:

这些值应该在视图中,而不从下拉列表中选择.之后,无论用户从建议中添加哪个用户,都应将其添加到列表中.
这就像EditText在用户开始输入之前设置提示或一些文本.
谢谢.