我正在使用GridLayout
创建一个简单的登录界面。
我希望两个EditText
适合它们所在的细胞。
以下是问题的屏幕截图。
绿色虚线显示GridLayout
边框,蓝色线显示EditText
字段的边框。
如您所见,EditText
超过了屏幕限制。
以下是EditText
<EditText
android:id="@+id/etEmail_loginFragment"
android:layout_width="wrap_content"
android:layout_height="40dp"
app:layout_column="1"
app:layout_gravity="fill_horizontal|center_vertical"
app:layout_row="0"
android:background="@android:color/white"
android:ems="10"
android:inputType="textEmailAddress"
android:textSize="14sp" />
即使我更改layout_width属性,问题仍然存在。看起来android忽略了那个属性。
我该如何解决?
答案 0 :(得分:0)
您正在使用ems属性修复EditText宽度,这就是layout_width中的更改无效的原因。尝试使用较低的值,或者只是在不希望字段具有固定大小时将其删除。
答案 1 :(得分:0)
我发现创建GridView的最佳方法是使用RecyclerView和GridLayouy管理器。适配器实现与普通RecyclerView
相同您可以像这样创建GridLayout管理器
//3 is the row span
GridLayoutManager a = new GridLayoutManager(this, 3);
这将帮助您提高性能并使用ViewHolder模式创建视图