Android TextEdit 在填充大量文本时会扩展到屏幕边缘
我在表格布局中有几个文本编辑。如果值较小,文本编辑会拉伸到屏幕边缘。但是,较大的值会导致文本编辑扩展到屏幕边缘之外。如何始终将文本编辑宽度保持在屏幕边缘?
<TableLayout android:layout_height="wrap_content" android:layout_width="wrap_content" android:stretchColumns="1">
<TableRow android:baselineAligned="true" android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/textView4" android:layout_height="wrap_content" android:text="Perm:" style="@style/PlainText" android:layout_width="wrap_content"></TextView>
<EditText android:id="@+id/f" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
<TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView5" android:text="w/ repetition:" android:gravity="right"></TextView>
<EditText android:id="@+id/e" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Combinations:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/d" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
<TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView6" android:text="w/ repetition:" android:gravity="right"></TextView>
<EditText android:id="@+id/c" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="# of subsets:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/b" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pigeonhole:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/z" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
</TableLayout>
I have several text edits in a table layout. With small values, the TextEdits stretch to the edge of the screen. However, large values cause the TextEdits to expand past the screen edge. How do I keep the textedit width to the screen edge at all times?
<TableLayout android:layout_height="wrap_content" android:layout_width="wrap_content" android:stretchColumns="1">
<TableRow android:baselineAligned="true" android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/textView4" android:layout_height="wrap_content" android:text="Perm:" style="@style/PlainText" android:layout_width="wrap_content"></TextView>
<EditText android:id="@+id/f" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
<TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView5" android:text="w/ repetition:" android:gravity="right"></TextView>
<EditText android:id="@+id/e" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Combinations:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/d" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
<TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView6" android:text="w/ repetition:" android:gravity="right"></TextView>
<EditText android:id="@+id/c" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="# of subsets:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/b" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
<TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
<TextView android:id="@+id/TextView04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pigeonhole:" style="@style/PlainText"></TextView>
<EditText android:id="@+id/z" android:hint="0" android:scrollHorizontally="true"></EditText>
</TableRow>
</TableLayout>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
答案最终是 android:shrinkColumns(#, #) 而不是硬编码大小。答案评论中来自 @akand074 的评论。我发现这个链接解释了为什么以及如何工作:
http://formingupwithandroid.blogspot.com/2010/01/how-does-tablelayout-handle-column.html#remindMeAgain
The answer ended up being android:shrinkColumns(#, #) rather than hard coding the size. comment from @akand074 in the answer comments. I found this link which explains why and how this works:
http://growingupwithandroid.blogspot.com/2010/01/how-does-tablelayout-handle-column.html#remindMeAgain
类似这样的东西可以限制用户输入到编辑文本中的字母数量。
这将限制字符的溢出。
我注意到有些是数字字段。所以使用
或任何其他匹配选项。
更新
类似的内容将拉伸所选列以占用剩余空间,
请查看此链接以获取更多信息
http://developer.android.com/resources/tutorials/views/hello-tablelayout.html
something like this can restrict the no of letters user input into the edit text.
this will restrict the over flow of characters.
i noticed some are numeric fields. so using
or any other matching option.
UPDATE
something like this will stretch the selected column to take up the remaining space
check this link for more info
http://developer.android.com/resources/tutorials/views/hello-tablelayout.html