gpt4 book ai didi

android - 处理 LazyList 问题

转载 作者:太空狗 更新时间:2023-10-29 12:55:23 26 4
gpt4 key购买 nike

我已经使用惰性列表概念实现了示例应用程序。我想将所有字符串数组值分配给来自 LazyAdapter(extends BaseAdapter) 类的 TextView

我用过这个类如下

 public class LazyAdapter extends BaseAdapter {

private Activity activity;
private String[] data;
private static LayoutInflater inflater=null;
public ImageLoader imageLoader;



public LazyAdapter(Activity a, String[] d) {
activity = a;
data=d;
inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
imageLoader=new ImageLoader(activity.getApplicationContext());
}

public int getCount() {
return data.length;
}

public Object getItem(int position) {
return position;
}

public long getItemId(int position) {
return position;
}

public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;


if(convertView==null)
vi = inflater.inflate(R.layout.item, null);



String texts[]={"hai","how are you","hello","oyeeee"};

//i would like to set this texts[] values to TextView

for(int i=0;i< texts.size();i++)
{
TextView text=(TextView)vi.findViewById(R.id.text);;
ImageView image=(ImageView)vi.findViewById(R.id.image);
text.setText("item "+texts[i]);
imageLoader.DisplayImage(data[position], activity, image);


}
return vi;

}
}

这里我只能显示 oyeee。我怎样才能以列表的形式查看所有值

这里我如何在一个列表中显示所有字符串数组值,就像在我们显示 item0、item1、item2、....等的惰性列表中一样,

最佳答案

问题是因为您对要填充的每个项目都使用了 for 循环。在这种情况下,因为对于每个 View 都执行了 for 循环,显然它是数组中的最后一个元素,所以“oyeeee”被打印在所有行中也就不足为奇了。

现在你要做的是,你可以在你的 Activity 中的某个地方全局提供数组,并像这样更改 getView() 中的代码,

//数组的全局声明

 String texts[]={"hai","how are you","hello","oyeeee"};
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;


if(convertView==null)
vi = inflater.inflate(R.layout.item, null);


TextView text=(TextView)vi.findViewById(R.id.text);
ImageView image=(ImageView)vi.findViewById(R.id.image);
text.setText("item "+texts[postion]);
imageLoader.DisplayImage(data[position], activity, image);


}
return vi;

}

这就是全部。

关于android - 处理 LazyList 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7307442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com