안드로이드 개발 질문/답변
(글 수 45,052)
잘 되던 리스트뷰가 건드린것도 없는데 갑자기 맛이 가기 시작했습니다...
어댑터를 이용해서 리스트뷰 하나당 한개의 텍스트뷰와 에딧텍스트를 뿌려주는 뷰인데요 소스는 이렇습니다.
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.editpage);
arItem = new ArrayList<ListItem>();
arItem.add(new ListItem("ServerName", ""));
arItem.add(new ListItem("Domain", ""));
arItem.add(new ListItem("Port", ""));
arItem.add(new ListItem("Id", ""));
arItem.add(new ListItem("Password", ""));
mAdapter = new MultiAdapter(SubActivity.this, arItem);
MyList = (ListView) findViewById(R.id.editList);
MyList.setAdapter(mAdapter);
}public class MultiAdapter extends BaseAdapter
{
LayoutInflater mInflater;
ArrayList<ListItem> arSrc;
String[] Text = new String[5];
public MultiAdapter(Context context, ArrayList<ListItem> arItem)
{
mInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
arSrc = arItem;
}
public int getCount()
{
return arSrc.size();
}
public Object getItem(int position)
{
return arSrc.get(position);
}
public long getItemId(int position)
{
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
if (convertView == null)
{
int res = R.layout.addserver;
convertView = mInflater.inflate(res, parent, false);
}
arSrc.get(position).txt = (TextView)convertView.findViewById(R.id.text);
arSrc.get(position).txt.setText(arSrc.get(position).Text);
arSrc.get(position).edt = (EditText)convertView.findViewById(R.id.edit);
arSrc.get(position).edt.setText(arSrc.get(position).EditText);
return convertView;
}
}




잘 작동하던게 갑자기 안되니 무지하게 답답하네요 ㅠㅠㅠ
작업끝나고 확인버튼을 눌렀더니 첫번째 아이템의 텍스트는 사라지고 5번째텍스트가 복사되서 들어가있는둥...
비슷한 현상을 겪으신 분이나 해법을 알고 계시는분은 도움을 부탁드립니다.