用户输入太长,无法处理alertdialog
问题描述:
有没有办法处理警报对话框中长时间的用户输入?我有一个小小的提醒对话框,需要几个输入,并且每当字符串输入太长时,其他输入和文本浏览都会被挤掉。有没有办法将字符串输入放在不同的行上或包装其他文本框的方式?我直接从代码而不是XML创建alertdialog。用户输入太长,无法处理alertdialog
LinearLayout layout = new LinearLayout(this);
EditText weight = new EditText(this);
EditText mark = new EditText(this);
TextView marktext = new TextView(this);
marktext.setText("Mark");
TextView weighttext = new TextView(this);
weighttext.setText("Weight");
mark.setInputType(InputType.TYPE_CLASS_NUMBER);
weight.setInputType(InputType.TYPE_CLASS_NUMBER);
//Assignment name input
EditText workType = new EditText(this);
workType.setInputType(InputType.TYPE_CLASS_TEXT);
TextView workTypeText = new TextView(this);
workTypeText.setText("Name of the work: ");
weight.setId(99);
mark.setId(100);
workType.setId(9999);
/*Spinner addworkspinner = new Spinner(this);
ArrayAdapter<String> addworkadapter = new ArrayAdapter<String>(
this, android.R.layout.simple_spinner_item, ClassManager.possiblework);
addworkspinner.setAdapter(addworkadapter); */
layout.addView(workTypeText);
layout.addView(workType);
layout.addView(marktext);
layout.addView(mark);
layout.addView(weighttext);
layout.addView(weight);
AlertDialog.Builder addwork = new AlertDialog.Builder(this);
addwork.setTitle("Add a piece of work");
addwork.setView(layout);
答
您可能希望将代码为您输入的文本字符的限制,其中,若超过上限,它改变线的nuumber。使用(%)模数来划分某一行中的字符数。
有关 Android: Vertical alignment for multi line EditText (Text area)的信息也可能有助于确定您需要在EditText中进行更改。
是的,我在想,但问题是,即使是小到8个字符的字符串使其溢出 – user3155915
您可以尝试在每个a,e,i,o,u,y或double之后加上( - )短划线如果单词不合适,则会显示'll'和'rr'等字母。除非字符串在特定行中没有元音,y,'rr'或'll',否则我们会遇到问题。它可能看起来像逻辑,逻辑,逻辑,\ nly等等(其中\ n表示行结束)。 –