在Android中更改AutoCompleteTextView的宽度

EGH*_*HDK 19 java xml android autocompletetextview android-listview

我被困在这几天了.我的布局中有一个autoCompleteTextView和一个50/50的按钮.自动完成功能正常,但建议只占屏幕的一半(相当于我的textView占用的大小).我怎么能改变它来占据整个宽度?

原谅我糟糕的油漆技巧:

Blue = AutoCompleteTextView Red =所需的自动填充建议

这似乎是一个微不足道的问题,但只是将宽度更改为fill_parent不起作用.任何想法xml或编程?

解决方案: myAutoCompleteTextView.setDropDownWidth(ViewGroup.LayoutParams.MATCH_PARENT)

在此输入图像描述

编辑: 我的第一个问题似乎已经解决,但现在如果我切换我的按钮和我的autoCompleteTextView我得到另一个奇怪的问题.宽度从textView开始的位置开始.让我有一个不可取的结果.

解决方案:请参阅用户编辑1:vikram

在此输入图像描述

Vik*_*ram 32

您可以使用以下属性在此窗口小部件的描述中设置此属性:

android:dropDownWidth="match_parent"
Run Code Online (Sandbox Code Playgroud)

如果您想在java'以编程方式'中执行此操作,请使用以下方法setDropDownWidth(int):

myAutoCompleteTextView.setDropDownWidth(int)
Run Code Online (Sandbox Code Playgroud)

编辑1:

Point pointSize = new Point();

getWindowManager().getDefaultDisplay().getSize(pointSize);

myAutoCompleteTextView.setDropDownWidth(pointSize.x);
Run Code Online (Sandbox Code Playgroud)


gsw*_*ski 9

我觉得setDropDownAnchor()更方便.

只需传递某个视图的ID,下拉视图就会匹配其宽度和位置(无论放置实际文本视图的位置).

在您的示例中,可以是两者的父级:按钮和文本视图.