Android Item长按弹出删除,点击删除执行删除对应的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Item长按弹出删除,点击删除执行删除对应的文件相关的知识,希望对你有一定的参考价值。
我用ArrayList的方式显示了存储卡某个文件件内的文件的列表,AdapterView添加了点击的事件,但是我想添加一个长按点击弹出菜单,里面有删除按钮,点击删除按钮删除对应的文件夹内的那个文件,并刷新列表。我现在遇到的问题是,我怎么获取那个文件的地址,这个是最大的问题。希望高手们能给小弟一个Demo或者一些指点,我刚接触Android,谢谢
我简单的贴了下代码,希望各位帮我看下行么?在网盘中
http://pan.baidu.com/share/link?shareid=738293995&uk=706528506
谢谢了
@Override
public int getCount()
return list.size();
@Override
public Object getItem(int arg0)
return list.get(arg0);
@Override
public long getItemId(int arg0)
return arg0;
@Override//最主要的重写方法
public View getView(int arg0, View arg1, ViewGroup arg2)
View view = View.inflate(显示list的Activity.this,
ListView的item是个xml布局文件(R.layout.????), null);
Button bt_enter = (Button) view.findViewById(R.id.bt_enter);
//获取ListView的一个控件,这里面获取了一个Button
//注意看,有一个参数int arg0,这个参数很重要是这个item在listView的位置
//声明一个final的值,并把arg0的值赋值给他
final int position=arg0;
bt_enter.setOnClickListener(new OnclickListenner()
//重写方法,你懂的
//在这里就可以操作position对应的条目
);
return view;
写一个内部类,Myadapter继承BaseAdapter,在需要把listView适配的地方listView.setAdapter(new MyAdapter());
参考技术A 你是怎么得到文件名的??怎么会没有路径你在取文件名的时候,把它的完整路径也加入一个ArrayList,点击的时候用position去删除 参考技术B 先把Item对应position的信息保存了 长按事件得到position再做操作 参考技术C 文件的地址就是你的Listview填充的数据的某一项,你可以通过监听里的position去定位.demo你可以去eoe,csdn,oschina等社区找. 参考技术D listView.setOnItemLongClickListener(new OnItemLongClickListener()
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View view,
int position, long id)
DeleteDialog();
return false;
);
/**
* 退出系统确认框
*/
private void DeleteDialog()
AlertDialog.Builder builder = new Builder(ShowActivity.this);
builder.setMessage("确定删除文件?");
builder.setTitle("提示");
builder.setPositiveButton("确定", new DialogInterface.OnClickListener()
@Override
public void onClick(DialogInterface dialog, int which)
//这里File构造方法参数就是从你list读取的文件路径
File file = new File(listItem.get(index));
file.delete();
//通知adapter 更新
adapter = new AAAdapter(this, list);
listView.setAdapter(adapter);
);
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
@Override
public void onClick(DialogInterface dialog, int which)
);
builder.create().show();
//文件路径你不是保存在list里了,通过positon 直接拿就OK了。。。。本回答被提问者和网友采纳
以上是关于Android Item长按弹出删除,点击删除执行删除对应的文件的主要内容,如果未能解决你的问题,请参考以下文章
android中RecyclerView控件实现长按弹出PopupMenu菜单功能