我试图将我的iOS应用移植到Android。
我有一个带有朋友列表(名称和姓氏)的ListView。所有行都具有相同的布局。 当我点击一行时,我将活动切换为朋友详细信息。
使用iOS我使用tableview(ListView),我在其中设置行数,如果row == 0,则执行此操作,否则如果row == 1执行该操作等等。
我从sqlite数据库中获取朋友详细信息,该数据库只返回1条记录,即:姓名,姓氏,年龄,性别,地址,爱好等等。
我的详细资料列表视图应该只有5行,如果行== 0,则为布局"名称"对于name和lastname有2个textview,如果row == 1 inflate layout" address"对地址,城市和国家等有3个textview
在我的适配器中,我实现了:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
LayoutInflater inflater = (LayoutInflater) mcontext.getSystemService(mcontext.LAYOUT_INFLATER_SERVICE);
if (position == 0) {
view = inflater.inflate(R.layout.ddetrow1, parent, false);
tvdetname.setText("#" + detName);
tvdetlastname.setText(detLastname);
tvdetname.setFocusable(false);
tvdetlastname.setFocusable(false);
}
else if (position == 1) {
view = inflater.inflate(R.layout.ddetrow2, parent, false);
tvdetaddr.setText(detAddr);
tvdetcity.setText(detCity);
tvdetcountry.setText(detCountry);
tvdetaddr.setFocusable(false);
tvdetcity.setFocusable(false);
tvdetcountry.setFocusable(false);
}
..........
return view;
}
它有效,但它只显示第0行,我想因为sql查询只返回1条记录。
如何设置5行以显示所有其他详细信息?
我试图实施:
public int getCount() {
return 5;
}
但是应用程序崩溃,因为只有1条记录。可能是我的方法是错误的,因为我尝试做与iOS相同的方法。
我需要一个ListView,因为当用户点击特定行时,我需要切换活动来编辑该行中显示的值。
感谢。