我有xml
个文件:row.xml
,其中包含EditText
( et )和Spinner。
活动开始,我在视图中“膨胀”row.xml
并设置一个监听器 - 当 et 更改时,row.xml
会自动膨胀。我的代码如下所示。
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingTop="3dp"
android:paddingBottom="3dp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/spinnerDay"
android:id="@+id/nameUser"
android:theme="@style/myEditText"
android:layout_marginRight="18dp"
/>
<Spinner
android:layout_width="wrap_content"
android:layout_height="38dp"
android:id="@+id/spinnerDay"
android:layout_alignParentRight="true"
android:popupBackground="#FFFFFFFF"
android:background="@drawable/selector_spinner">
</Spinner>
</RelativeLayout>
我的问题是为新行设置一个监听器,以便重复这个技巧。
LinearLayout v = new LinearLayout(context);
v.addView(rowView);
View rowView = inflater.inflate(R.layout.row, null);
((LinearLayout) rootView.findViewById(R.id.userList)).addView(v);
R.id.userList
是我膨胀row.xml
EditText的监听器
((EditText) rootView.findViewById(R.id.nameUser)).setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View view, int i, KeyEvent keyEvent) {
LinearLayout v = new LinearLayout(view.getContext());
v.addView(rowView);
((LinearLayout) rootView.findViewById(R.id.userList)).addView(v);
return false;
}
});
我不是专家程序员,所以我问:产品这样的效果的最佳方法是什么,并重新插入数据?
所有事情都变得更加棘手,因为我在Fragments
中FragmentActivity
工作,我应该在最后一个中获取数据,然后确认...我怎样才能保存et的内容?
任何帮助将不胜感激,谢谢!