在ListView中加载BaseAdapter的getView()方法,加载了十个EditText,当第一个EditText中输入数据后第八个Edittex也有
我在ListView中用BaseAdapter的getView()方法加载适配器,每个Item里有一个TextView和一个EditText,当我在第一个EditText里面输入数据,比如1234时,同时会在第八个EditText中也出现1234,同样的,如果我在第二个EditText中输入1234,那么在第九个EditText中就会出现1234,以此类推,不知道是怎么回事,网上查了一下说getView()有记忆功能,不知道是什么意思。下面是我的代码,请高手指教,小女子谢谢大家了!
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:selectAllOnFocus="true"
android:layout_weight="1" />
</LinearLayout>
</LinearLayout>
public class LVTestActivity extends Activity {
/** Called when the activity is first created. */
ListView lv;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
ListView lv = (ListView)findViewById(R.id.lv);
MyBaseAdapter adapter = new MyBaseAdapter();
lv.setAdapter(adapter);
}
class MyBaseAdapter extends BaseAdapter
{
@Override
public int getCount() {
// TODO Auto-generated method stub
return 10;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if(convertView==null){
convertView = LayoutInflater.from(getApplicationContext()).inflate(R.layout.item, null);
}else{
}
TextView tv = (TextView) convertView.findViewById(R.id.textView1);
tv.setText("测试:"+position);
return convertView;
}
}
}