我正在使用web servis來獲取我需要的地點的數據。在listView中,我需要顯示圖像,地點名稱,地點類型和地址圖像。我正在使用簡單適配器。我知道如何填充文本,但不知道如何從文件夾繪製圖像。第一張圖像按照某種順序排列(如圖像A,第二張圖像B,第三張圖像C),第二張圖像取決於地點的類型(如果地點是麪包店而不是圖像將是麪包)等等。我轉發給SimpleAdapter的ArrayList的HashMaps ...任何人都可以給我一些想法或一些代碼?ListView問題 - 如何將可繪製圖像放入列表視圖
1
A
回答
2
我認爲這個例子會幫助你。
//主類
import android.app.Activity;
import android.os.Bundle;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
public class Alertslistview extends Activity
{
private static class EfficientAdapter extends BaseAdapter
{
private LayoutInflater mInflater;
public EfficientAdapter(Context context)
{
mInflater = LayoutInflater.from(context);
}
public int getCount()
{
return alerts.length;
}
public Object getItem(int position)
{
return position;
}
public long getItemId(int position)
{
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
ViewHolder holder;
if (convertView == null)
{
convertView = mInflater.inflate(R.layout.alertslist, null);
holder = new ViewHolder();
holder.img =(ImageView) convertView.findViewById(R.id.img);
holder.text2 = (TextView) convertView.findViewById(R.id.TextView02);
convertView.setTag(holder);
}
else
{
holder = (ViewHolder) convertView.getTag();
}
holder.img.setImageResource(imgid[position]);
holder.text2.setText(alerts[position]);
return convertView;
}
static class ViewHolder
{
ImageView img;
TextView text2;
}}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView l1 = (ListView) findViewById(R.id.ListView01);
l1.setAdapter(new EfficientAdapter(this)); }
private static final String[] alerts= {"Service Request EBH123H has been reassigned to Mohammed","Appointment Request for May 29th declined","New Survey - Metro Rail Survey available on your device"};
static final Integer[] imgid = {R.drawable.alert,R.drawable.alert,R.drawable.alert};
}
0
你必須創建一個類從BaseAdapter延伸,並把代碼getview方法是這樣的:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v;
if (convertView == null) {
LayoutInflater li = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = li.inflate(R.layout.imagelayout, null);
ImageView iv = (ImageView) v.findViewById(R.id.icon_image);
iv.setImageResource(icons[position]);
} else {
v = convertView;
}
return v;
}
之前,創建一個包含ImageView的ImageLayout.xml,之後適應你的ListView這一類。
對不起,我的英語不好!
相關問題
- 1. 如何添加圖像到可繪製的列表視圖
- 2. 將位圖圖像放入ListView的圖像視圖中
- 3. 可繪製圖像縮放
- 4. 如何將圖像放入actiobar列表?
- 5. 將ListView拖放到列表視圖(Listbox)
- 6. 如何在懶列表視圖中顯示可繪製的文件夾圖像
- 7. 在圖像的大列表視圖上緩存可繪製圖像
- 8. 如何將可繪製圖像轉換爲列表<ResolveInfo>?
- 9. 如何將圖像插入到列表視圖中?
- 10. 如何將圖像列表添加到WPF列表視圖?
- 11. 我可以把我的意圖放入列表視圖
- 12. 如何將列表視圖放入gridview中
- 13. 將圖像放入可繪製文件夾中?
- 14. 將圖像添加到列表視圖
- 15. Delphi:如何在CustomDrawItem列表視圖中繪製小圖標
- 16. 如何將查詢信息放入列表視圖中?
- 17. 將不同的圖像放入可擴展列表視圖中的子項目
- 18. 列表視圖與圖像
- 19. Android:繪製畫布視圖和列表視圖?
- 20. C# - 將圖像加載到圖像列表和列表視圖
- 21. 自定義繪製列表視圖問題
- 22. 如何從包括圖像規格的可繪製圖像檢索圖像並將其顯示到ListView中
- 23. Android:將位圖或可繪製圖像放入XML顯示屏幕
- 24. 如何在透視中繪製圖像?
- 25. 如何調試列表視圖問題?
- 26. 模型中的圖像的URL列表,想要在視圖中繪製圖像
- 27. 是否可以將圖像放入可展開列表中?
- 28. 可擴展的列表視圖問題
- 29. 在列表視圖上繪製會禁用在列表視圖項上重繪
- 30. 圖像視圖列表視圖項目
這是okej..my英語是不是更好。 :D你可以解釋這2行: v = li.inflate(R.layout.imagelayout,null); ImageView iv =(ImageView)v.findViewById(R.id.icon_image); 012.Mi.setImageResource(圖標[position]); 以及我如何添加來自listView的文本,正如我在我的問題中所解釋的 – Jovan