FilelistView
计算机113 欧丹
1、首先在eclipse3.7创建项目
2、在
中点击鼠标右键选择other

进行下一步操作
点击Browse出现以下弹框并在Choose a type中输入BaseAdapter查找到这个类点击添加

3、然后是界面的设计,首先在
中的
进行xml的添加例如下图

在
选项中要选择
布局方式
点开main.xml进行页面布局设计
其中包含一个button控件,一个textview控件,一个listview空降,一个布局控件。

然后在item.xml进行页面布局
其中包含两对他们的个textview控件,一个Image图片控件(图片的自己拖到res中的dirawable-hdpi文件夹中)

对他们控件ID进行更改(更改ID后要保存)
adapter的后台代码编写:
public class FileListAdapter extends BaseAdapter {
public Activity activity; //创建View时必须要提供Context
public List<File> list=new LinkedList<File>(); //数据源
public String currPath;
public FileListAdapter(Activity activity) {
this.activity = activity;
}
public void scanFiles(String path)
{
list.clear();
File dir=new File(path);
File[] subFiles=dir.listFiles();
if(subFiles!=null)
for(File f:subFiles)
list.add(f);
this.notifyDataSetChanged();
currPath=path;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View v=View.inflate(activity, R.layout.item, null);
TextView txtName= (TextView) v.findViewById(R.id.txtName);
ImageView imgIcon=(ImageView) v.findViewById(R.id.imgIcon);
File f=list.get(position);
txtName.setText(f.getName());
Bitmap bmp_folder=BitmapFactory.decodeResource(
activity.getResources(),R.drawable.folder);
Bitmap bmp_file=BitmapFactory.decodeResource(
activity.getResources(),R.drawable.file);
if(f.isDirectory())
imgIcon.setImageBitmap(bmp_folder);
else
imgIcon.setImageBitmap(bmp_file);
return v;
}
}
4、Activity中编写代码:


浙公网安备 33010602011771号