如何将我的微调器设置为标准尺寸? 这意味着它不会更小或更大,具体取决于它当前显示的字符串。我希望它具有固定的大小,如果它包含比其大小更大的单词,则必须截断该单词(仅显示适合的单词)锭子)。谢谢你的时间。
答案 0 :(得分:1)
在创建时,只需截断传递给微调器的字符串数组。
Pseudo for it:
for each string,
if string > 20 characters,
trim to 20 characters (or 17 + ...)
add string to array.
add array to adapter of spinner.
但我必须指出,旋转器不是下拉列表。 android api通常会在屏幕中间的可滚动“弹出窗口”中显示列表。并且工作得很好。如果你有巨大的字符串,那么这可能是一个问题。虽然我似乎在想,它会为你截断..试试看。
答案 1 :(得分:1)
要根据多个屏幕给出宽度,您可以使用尺寸和设置宽度。 假设您想要留下微调按钮的区域,以便文本不应该过度 设置填充而不是修剪文本,也可以设置marqee效果,以便正确显示大文本。
编辑:
<Spinner
android:id="@+id/spntipode"
android:layout_width="@dimen/spin_size"
android:layout_height="wrap_content"
android:layout_below="@+id/lbltipode"
android:layout_marginLeft="10dip"
android:layout_marginTop="5dip"
android:paddingLeft="5dip"
android:paddingRight="30dip"
android:background="@drawable/spinner_selector"
/>
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
((TextView)v).setEllipsize(TruncateAt.MARQUEE);
return v;
}
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View v =super.getDropDownView(position, convertView, parent);
((TextView)v).setEllipsize(TruncateAt.MARQUEE);
return v;
}