我有一个Spinner
微调器内部的文本和微调器展开时的选择(下拉视图)可能会很长,具体取决于语言环境。我为微调器视图和下拉视图设置了一个自定义视图,应该允许文本行换行,
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
style="?android:attr/spinnerDropDownItemStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="none"
android:minHeight="?android:attr/listPreferredItemHeight"
android:singleLine="false" />
在代码中,
spinnerPermission = (Spinner) layout.findViewById(R.id.permission_spinner);
ArrayAdapter<CharSequence> permissionAdapter = ArrayAdapter.createFromResource(getActivity(), R.array.add_share_dialog_permissions,
R.layout.multiline_spinner_dropdown_item);
permissionAdapter.setDropDownViewResource(R.layout.multiline_spinner_dropdown_item);
spinnerPermission.setAdapter(permissionAdapter);
这在 android 2 中工作正常,但在 android 4 中,下拉视图中的文本仍然不会换行,
尽管从图像中看不清楚,但微调器视图中的文本确实可以正确换行。我不能确定,但下拉视图周围的容器似乎不受屏幕的限制,而是从屏幕向右扩展。这将阻止文本换行,因为就TextView
而言,有足够的空间。
这是层次结构查看器中微调器的弹出视图,
有任何想法吗?