我有一个带有图标和EditText
的复合视图:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/edit_text_height">
<ImageView
android:id="@+id/ivIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/edit_text_padding"
android:layout_marginRight="@dimen/edit_text_padding"
android:layout_centerVertical="true" />
<EditText
android:id="@+id/etContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:cursorVisible="true"
android:gravity="left|center_vertical"
android:layout_marginLeft="@dimen/edit_text_padding"
android:layout_marginRight="@dimen/edit_text_padding"
android:paddingLeft="@dimen/edit_text_padding_left"
android:paddingRight="@dimen/edit_text_padding_left"
android:layout_centerHorizontal="true"
android:maxLines="1"
android:background="@android:color/transparent"
style="@style/edit_text" />
</RelativeLayout>
我在登录表单和我的应用程序中的其他位置使用此复合视图。有时我需要在onSaveInstanceState()
发生时保存字段的内容。当我恢复状态时,所有字段都将具有上一个EditText
字段的相同值,因为通常所有EditText
个视图都具有相同的ID(etContent
)。
除此之外,如果您有登录活动(电子邮件和密码字段),这将产生安全问题,因为第一个字段(电子邮件)将具有最后一个字段的值(在这种情况下是密码)。
有任何解决此问题的建议吗?