您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Android >> ListView中的ImageView图片显示问题

ListView中的ImageView图片显示问题

来源:网络整理     时间:2016/5/5 18:58:12     关键词:listview,image

关于网友提出的“ListView中的ImageView图片显示问题”问题疑问,本网通过在网上对“ListView中的ImageView图片显示问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题:ListView中的ImageView图片显示问题
描述:

package com.pei;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.BaseAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
public class OrderListView extends Activity {
private ArrayList<>> arrayList = new ArrayList<>>();
private Map map;
MyAdapter adapter = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.order_list);
initDate();
adapter = new MyAdapter(this);
ListView list = (ListView) findViewById(R.id.order_list);
list.setAdapter(adapter);
}
private void initDate() {
arrayList.clear();
HashMap user1 = new HashMap();
user1.put("img", R.drawable.gohome);
user1.put("username", "家庭模式");
arrayList.add(user1);
HashMap user2 = new HashMap();
user2.put("img", R.drawable.bar);
user2.put("username", "酒吧模式");
arrayList.add(user2);
HashMap user3 = new HashMap();
user3.put("img", R.drawable.love);
user3.put("username", "梦幻模式");
arrayList.add(user3);
HashMap user4 = new HashMap();
user4.put("img", R.drawable.crazy);
user4.put("username", "疯狂模式");
arrayList.add(user4);
HashMap user5 = new HashMap();
user5.put("img", R.drawable.user_male);
user5.put("username", "自定义模式");
arrayList.add(user5);
}
public Handler handler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
arrayList.remove(msg.arg1);
adapter.notifyDataSetChanged();
break;
}
super.handleMessage(msg);
}
};
public class MyAdapter extends BaseAdapter {
private LayoutInflater inflater;
public MyAdapter(Context c) {
this.inflater = LayoutInflater.from(c);
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
public View getView(int arg0, View arg1, ViewGroup arg2) {
View myView = inflater.inflate(R.layout.modeldelectlist, null);
TextView textView4 = (TextView) myView.findViewById(R.id.name);
ImageView img = (ImageView) myView.findViewById(R.id.img);
ImageButton button = (ImageButton) myView.findViewById(R.id.ImageButton01);
textView4.setText((String) arrayList.get(arg0).get("username"));
// img.setImageDrawable(arrayList.get(arg0).get("img"));//这里我要添加图片可是就是出错?怎么回事我吧img.的方法试了好多都不可以,求帮助。。。
button.setFocusable(false);
final int arg = arg0;
// 添加事件响应
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(OrderListView.this).setTitle(
"您确定要删除吗?").setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
Message message = new Message();
message.what = 1;
message.arg1 = arg;
handler.sendMessage(message);
}
}).setNegativeButton("取消",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
}
}).show();
}
});
return myView;
}
}
}


解决方案1:

因为我看你放在list里面比较麻烦,写的代码比较多,用起来也不怎么方便。
你可以调试一下程序,要是你的textview显示的内容要是没问题,但img.setImageResource (arrayList.get(arg0).get("img")) ;这样子有问题的话,那我是无能为力了。我做的时候是按我上面说的那样去做的,可能你要实现的功能比较复杂吧。
最好的办法是调试一下程序,看提示出什么错。再解决了^_^


以上介绍了“ListView中的ImageView图片显示问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/921162.html

相关图片

相关文章