Sag*_*gar 11 android android-edittext
我的问题是我的EditTexts中的错误消息在操作栏的顶部滚动.这是一个安卓漏洞,还是我做错了什么?
即使键盘关闭,这个错误也会发生,它恰好出现在屏幕截图中.
这就是我所说的:http://imgur.com/fG8bd3E,uFzhOXa#1 < - 有两个图像
这是我的布局,我将代码中的EditTexts添加到kiosk_form_table LinearLayout
<ScrollView
style="@style/DefaultBackground"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.6"
android:fadeScrollbars="false"
android:padding="20dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingRight="20dp" >
<LinearLayout
android:id="@+id/kiosk_form_table"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" />
<Button
android:id="@+id/kiosk_submit_large"
style="@style/LoginButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:onClick="submit"
android:text="@string/submit" />
</LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
我如何添加EditTexts
kiosk_form.addView(getKioskRow(R.layout.kiosk_text_row, "First Name", true, null));
Run Code Online (Sandbox Code Playgroud)
private View getKioskRow(int layout, String header, boolean required, String buttonName)
{
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(layout, null);
view.setTag(required);
addHeader((TextView) inflater.inflate(R.layout.field_header, null), header);
if (required)
((TextView) view.findViewById(R.id.kiosk_input)).setHint("Required");
if (buttonName != null)
((Button) view.findViewById(R.id.kiosk_input_button)).setText(buttonName);
return view;
}
private void addHeader(TextView view, String header)
{
view.setTag(false);
view.setText(header);
kiosk_form.addView(view);
}
Run Code Online (Sandbox Code Playgroud)
我是如何设置错误的
(TextView) view).setError(getString(R.string.error_field_required));
Run Code Online (Sandbox Code Playgroud)
您想在哪里查看错误消息?如果您希望它在 EditText 上,请将其设置在 editText 上。
((EditText) findViewByID(R.id.my_edit_text)).setError ...... // and so on
Run Code Online (Sandbox Code Playgroud)
编辑:原始答案没有帮助。
这是一种可能的解决方案:您可以在用户滚动视图时隐藏错误消息。滚动完成后,您可以重新设置错误消息,它应该出现在正确的位置!以下是如何检测滚动何时完成: Android:如何检测滚动何时结束
| 归档时间: |
|
| 查看次数: |
3843 次 |
| 最近记录: |