在Android实际开发过程中常常会遇到,改动ListView中某一项的值。怎样达到这一目的呢?

方法主要有两种:

第一种方式:当ListView中某一项的值发生变化之后,又一次载入数据已达到更新ListView的目的。

尽管第一种方式可以解决这个问题,但不值得推荐。由于这样会带来不必要的资源消耗。在移动终端这样的硬件资源和计算能力都有限的情况下,显然有点得不偿失了。况且用户的体验也不好。

另外一种方式:另外一种方式能够说是第一种方式的改进。ListView中某一项的值发生改变,实际上是ListView的数据源发生了改变。既然数据源发生了改变那么我们就改动数据源。

以下就拿改动ListView中某一项文件名称来演示详细步骤:

步骤一:获取单击ListView中tem的位置

//注冊单击ListView中的Item响应的事件
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
currentPosition= position; //获取单击ListView 中tem的位置
}
});

步骤二:依据单击ListView中tem的位置更新ListView的数据源,并通知适配器数据改变

String newFileName=edtFileName.getText().toString().trim();
file.renameTo(new File(file.getParent(),newFileName));//重命名
//更新ListView
Map<String, Object>map=listItems.get(currentPosition);
map.put("fileName", newFileName);//将新的文件名称加入到Map以替换旧文件名称
listItems.set(currentPosition, map);//替换listItems中原来的map
adapter.notifyDataSetChanged();//通知SimpleAdapter数据改变

文件重命名之动态改动ListView里指定Item中的组件属性的更多相关文章

  1. Linux下文件重命名、创建、删除、修改及保存文件

    一.重命名(更名) linux 给文件改名的命令是mv命令 mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中.该命令等同于DOS系统下的ren和move命令的组合.它的使用权限是所有用户. ...

  2. PHP文件操作,多行句子的读取,file()函数,file_get_contents()函数,file_put_contents()函数,is_file,统计网站pv (访问量),文件的复制 copy,文件重命名 rename,删除文件 unlink

    php中添加utf-8: header("Content-type:text/html;charset='UTF-8'"); 文件操作步骤: 1.在同一目录下建立一个file.tx ...

  3. Azure Storage Blob文件重命名

    Azure Storage的SDK并没有提供文件重命名的方法,而且从StorageExplorer管理工具里操作修改文件名的时候也有明确提示: 是通过复制当前文件并命名为新文件名再删除旧文件,不保存快 ...

  4. mac常用快捷键,Mac文件重命名快捷键,Mac OS快速访问系统根目录, MacOS 10.11重要数据的存储位置大全

    command+r,相当于F5,刷新页面 command+F5,启动voiceover command+q 关闭当前程序 在Finder中command+/ 打开底部状态栏,可以查看剩余磁盘空间大小 ...

  5. 【Java EE 学习 22 上】【文件上传】【目录打散】【文件重命名】

    1.文件上传概述 (1)使用<input type="file">的方式来声明一个文件域. (2)表单提交方式一定要是post方式才行 (3)表单属性enctype 默 ...

  6. git 文件重命名

    文件重命名 git mv old_name new_name git commit -m 'rename' git push origin master 删除文件 git rm filename

  7. Java用来进行批量文件重命名,批量提取特定类型文件

    原因: 因为在网上下载视频教程,有的名字特别长,一般都是机构或者网站的宣传,不方便直接看到视频的简介,所以做了下面的第一个功能. 因为老师发的课件中,文件夹太多,想把docx都放在同一个文件夹下面,一 ...

  8. Linux环境给文件重命名

    Linux环境给文件重命名时,如果重命名后的文件名称与当前路径下已存在的文件名称相同,则重命名的文件会覆盖相同名称的文件内容: 例如:新建文件testfile1,内容为mytest: 新建文件test ...

  9. C#给文件重命名

    使用的主要方法是: File.Move(oldFileDir,newFileDir);//这个是移动文件的方法 Directory.GetFiles(dir);//获取dir路径下的所有文件的全路径 ...

随机推荐

  1. navicat数据库同步

    10.168.95.246

  2. php处理传值为空

    if(isset($_GET['id'])){}else{}isset($_GET['id'])==null

  3. Java常见面试题02-方法重写和方法重载的区别?方法重载能改变返回值类型吗?

    方法重写和方法重载的区别?方法重载能改变返回值类型吗?       A:Override方法重写和Overload方法重载的区别? Overload是否可以改变返回值类型?可以 方法重写 •  子类中 ...

  4. HDU 3018 一笔画问题

    题意:给你一个图 判断最少用几笔把这个图画出来(画过的边不能重新画) 思路: 并查集+欧拉回路 仔细想一想. 在一个强连通分量中 所有度为奇数的点之和÷2就是要画的笔画数 Now question : ...

  5. webpack打包大概流程

    webpack 步骤 1. 新建一个webpack.config.prod.js 2. 压缩bundle.js和index.html //设置为生产环境 new webpack.DefinePlugi ...

  6. javascript实现双击网页自动滚动,单击滚动停止

    当网页中有长篇文章时,浏览起来就比较吃劲了,想想一边忙着拖动滚动条,一边忙着浏览,确实挺累人的.为了客人能够轻松的浏览,我们可以使用script代码实现网页的自动滚屏,当双击网页的时候,网页将会自动向 ...

  7. 使用angular.js获取form表单中的信息

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Object的wait和Thread的sleep

    Object的wait() wait()搭配notify(),nofityAll()使用. 线程获取到对象锁之后,执行wait()就会释放对象锁,同时线程挂起,直到其他线程获取到对象锁并执行notif ...

  9. (转载)tnsping不是内部或外部命令

    手动添加 D:\app\Administrator\product\11.2.0\client_1\bin 到系统环境变量 path里面

  10. mac 下安装 mariadb

    通过brew 安装: brew install mariadb 初始化数据库 cd /usr/local/Cellar/mariadb/10.0.10/scripts mysql_install_db ...