我有一个EditText,我想填充所有可用的水平宽度,但宽度不应大于200dp
这使EditText适应任何屏幕尺寸,并使其在大屏幕上看起来很好(水平拉伸在大屏幕上看起来不太好).
如何在Android中执行此操作?
我看到maxWidth = 200dp和layoutWidth = fill_parent不能一起工作:
<EditText android:id="@+id/oldpassword"
android:hint="@string/youroldpassword"
android:inputType="textpassword"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:maxWidth="250dp" />
如果maxWidth和layoutWidth = fill_parent不能一起工作,那么maxWidth意味着什么?
换句话说,如果EditBox没有动态改变其宽度,那么你需要maxWidth为什么?
解决方法
您可以根据设备屏幕大小以编程方式设置宽度.
喜欢
喜欢
display display = getwindowManager().getDefaultdisplay();
int width = display.getWidth();
EditText et = (EditText)findViewById(R.id.editText);
if(width > 200)
{
et.setWidth(200);
}
else
{
et.setWidth(width);
}