如何在旋转器中换行较长的文本?
我在单独行的表格布局视图中有两个微调器和 EditText 控件。旋转器中填充有数据。我的问题是填充到旋转器中的数据(文本)太长,无法适应屏幕尺寸。因此,旋转器被迫不必要地拉伸另一行上的其他控件。
我必须在旋转器中显示文本。因此,使用省略号不是一种选择。如果可能的话,我怎样才能将冗长的文本包裹在旋转器上?
I have two spinner and EditText controls within a table layout view on a separate row. The spinners are populated with data. My problem is the data (texts) that are populated into the spinners are too lengthy to fit the screen size. Therefore, the spinners are forced to stretch unnecessarily stretching other controls on another row.
It's a must for me to show the texts in the spinner. Hence using ellipses is not an option. If it's possible how can I wrap the lengthy text on the spinners?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
第 1 步。带有换行文本的 TextView
首先要做的是强制简单的
TextView
换行文本。很简单:请注意此处的
singleLine
属性。第 2 步。自定义布局
现在我们应该以某种方式将
singleLine
属性设置为false
Spinner
使用TextView
显示列表中的项目。在您的代码中,您可能有地方创建适配器以将其与
Spinner
一起使用:想法是复制 android.R.layout.simple_spinner_dropdown_item布局到您的项目。然后通过在
CheckedTextView
中将singleLine
属性设置为false
进行修改:为此,请将文件添加到
res/layout
文件夹中名为multiline_spinner_dropdown_item.xml
并包含以下代码:请注意,此文件与 android.R.layout.simple_spinner_dropdown_item 布局,除了它有
singleLine
现在设置为false
。第 3 步。使用自定义布局创建适配器
将适配器创建代码修改为:
以下是修改后的
SpinnerActivity
示例的屏幕截图来自 Android SDK:Step 1. TextView with wrapped text
The first thing to do is to to force simple
TextView
to wrap text. Its easy:Note the
singleLine
attribute here.Step 2. Custom layout
Now we should somehow set
singleLine
attribute tofalse
inTextView
used bySpinner
to show the item in the list.In your code you probably have place where you create adapter to use it with
Spinner
:The idea is to copy the android.R.layout.simple_spinner_dropdown_item layout to your project. Then modify it by setting
singleLine
attribute tofalse
inCheckedTextView
:For this, add file to
res/layout
folder namedmultiline_spinner_dropdown_item.xml
with next code:Note that this file is identical to android.R.layout.simple_spinner_dropdown_item layout, except it has
singleLine
set tofalse
now.Step 3. Creating Adapter with custom layout
Modify your adapter creating code to:
Here is screenshot from modified
SpinnerActivity
example from Android SDK:定义自定义布局并将其与微调器和适配器一起使用。
Define a custom layout and use it with the spinner and adapter.