我正在一个警告对话框中显示项目列表,其中包含单项选择项目模式,没有任何问题。 如果长度超过最大宽度大小,如何以两行显示每个项目文本。 列表项是动态加载的,因此我们无法通过\ n断点编辑它们。
任何人都可以帮助我。
提前感谢。
谢谢
Sathish所在
感谢您的回复, 这里我使用AlertDialog.Builder来显示带有默认选项的对话框
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("Select the Dealershipname");
builder.setSingleChoiceItems(items, selectedDealershipname , new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.cancel();
}
});
builder.show();
这里我没有使用任何android.R.id.Text1类型的布局。那我怎么能在这里改变textview的属性呢。
答案 0 :(得分:1)
在对话框列表中的TextViews上使用setSingleLine(false)。您可以使用自定义ArrayAdapter获取对textview的引用:
String[] items = {"foo foo foo foo foo foo foo", "bar bar bar bar bar bar", "foobar foobar foobar foobar foobar foobar"};
ListAdapter adapter = new ArrayAdapter<String>(this,
android.R.layout.select_dialog_item, android.R.id.text1, items) {
public View getView(int position, View convertView, ViewGroup parent) {
// User super class to create the View
View v = super.getView(position, convertView, parent);
// TextView title =
// (TextView)v.findViewById(android.R.id.title);
TextView tv = (TextView) v.findViewById(android.R.id.text1);
tv.setSingleLine(false);
return v;
}
};
答案 1 :(得分:1)
您可以更好地实现自定义ArrayAdapter,您可以在其中以编程方式在适配器内更改列表项的布局。见这里:Custom ArrayAdapter Tutorial。
除了自定义适配器之外,您还可以使用android.R.layout.simple_list_item_single_choice
作为传递给ArrayAdapter的布局。它仍将使用android.R.id.text1
作为其TextView,并将自动处理RadioButton而无需您的进一步干预。