Sam*_*gal 32 layout android width tablelayout
我有两列TableLayout作为滚动视图的唯一子项.第一列包含TextViews("标签")和第二列包含EditText/ Spinner/ DateWidget等("值").尽管我已经指定android:layout_width="fill_parent"了TableLayout,TableRow和所有小工具(在"价值"列).
创建活动时,屏幕看起来很完美.但是,当人们输入一个非常长的值时EditText,"值"列超出了可见的屏幕区域.
我该如何解决这个问题?
Sav*_*sis 58
您可能希望使用权重来定义列的大小.因此,您将定义表格布局高度以填充父级,但对于每列,您应将宽度设置为"0px",将权重设置为希望列跨越的百分比.因此,假设您希望第一列为屏幕宽度的30%,则将其权重设置为"0.3",将第二列设置为"0.7".
试一试,看看是否有效.
Jes*_*run 24
解决这个问题的实用方法是使用stretchColumns和shrinkColumns属性TableLayout.它们的值应该是基于0的列索引.
例如,如果您有两列表格布局,并且:
TableLayout将整个父视图放在大屏幕设备上你会定义你TableLayout的:
<TableLayout
android:id="@+id/my_table_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="1"
android:shrinkColumns="0" >
</TableLayout>
Run Code Online (Sandbox Code Playgroud)
<TableLayout
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp">
<TableRow
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<TextView
android:layout_width="wrap_content"
android:text="Name "
android:layout_height="fill_parent">
</TextView>
<EditText
android:layout_width="0dp"
android:layout_weight="1"
android:hint="name"
android:layout_height="wrap_content"
>
</EditText>
</TableRow>
</TableLayout>
Run Code Online (Sandbox Code Playgroud)
这段代码可以让我在第一列上对齐文本视图并编辑文本填充父级.
| 归档时间: |
|
| 查看次数: |
63745 次 |
| 最近记录: |