1)ionic的listview对象即<ion-list></ion-list>

2)添加并显示编辑按钮(添加其他自定义按钮也一样)

can-swipe属性设置为true(默认就是true),在ion-item里添加一个编辑按钮

<ion-list can-swipe="true">
<ion-item ng-repeat="item in lists">
{{item.name}}
<ion-option-button class="button-assertive" ng-click="edit(item)">Edit</ion-option-button>
</ion-item>
</ion-list>

3)添加并显示排序按钮

排序按钮有自己名字,不是用<ion-option-button></ion-option-button>,排序按钮名字为:<ion-reorder-button></ion-reorder-button>

使用方法也很简单,ion-list的show-reoder属性设置为true,再在ion-item里添加一个排序按钮就行了

<ion-list show-reorder="true">
<ion-item ng-repeat="item in lists">
{{item.name}}
<ion-reorder-button class="ion-navicon" on-reorder="moveItem(item, $fromIndex, $toIndex)"></ion-reorder-button>
</ion-item>
</ion-list>

4)添加并显示删除按钮

方法同上,删除按钮的名字为:<ion-delete-button></ion-delete-button>

使用方法也是先在ion-list上设置show-delete属性为true,再ion-item里添加一个删除按钮就行了

<ion-list show-delete="true">
<ion-item ng-repeat="item in lists">
<ion-delete-button class="ion-minus-circled" ng-click="onItemDelete(item)"></ion-delete-button>
{{item.name}}
</ion-item>
</ion-list>

PS1:上面说的 show-reorder、show-delete 一般我们不会是一进入列表就显示的,需要进行排序、删除操作里才显示出按钮,所以show-reorder、show-delete当然不必直接写死true/false啦,可以使用$scope变量就可以了

示例:

 <ion-list show-delete="data.showDelete" show-reorder="data.showReorder"></ion-list>

PS2:上面的on-reorder是排序操作的回调操作,每次改变item的排序后都会回调,ng-click不用说就一个点击事件

PS3:不管是编辑、排序或删除,其实就是一个数据操作,改变数据数组的值就可以了,下面给出一下官方的js参考

$scope.edit = function(item) {
alert('Edit Item: ' + item.id);
}; $scope.moveItem = function(item, fromIndex, toIndex) {
$scope.lists.splice(fromIndex, 1);
$scope.lists.splice(toIndex, 0, item);
}; $scope.onItemDelete = function(item) {
$scope.lists.splice($scope.lists.indexOf(item), 1);
};

实际应用时,用的是数据库的数据,不只是操作数组就完事了,不过那也只是写个异步处理一下就可以了,这里就不说了

官方文档:http://ionicframework.com/docs/api/directive/ionList/

ionic listview对象的编辑、排序和删除的更多相关文章

  1. [Android分享] 【转帖】Android ListView的A-Z字母排序和过滤搜索功能

      感谢eoe社区的分享   最近看关于Android实现ListView的功能问题,一直都是小伙伴们关心探讨的Android开发问题之一,今天看到有关ListView实现A-Z字母排序和过滤搜索功能 ...

  2. Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音

    转载:http://blog.csdn.net/xiaanming/article/details/12684155 转载请注明出处:http://blog.csdn.net/xiaanming/ar ...

  3. Web jquery表格组件 JQGrid 的使用 - 7.查询数据、编辑数据、删除数据

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  4. Android 长按Listview显示CheckBox,实现批量删除。

    ListView实现的列表,如果是可编辑,可删除的,一般都要提供批量删除功能,否则的话,一项一项的删除体验很不好,也给用户带来了很大的麻烦. 实现效果图 具体实现代码 select.xml 主布局文件 ...

  5. ListView列表拖拽排序

    ListView列表拖拽排序能够參考Android源代码下的Music播放列表,他是能够拖拽的,源代码在[packages/apps/Music下的TouchInterceptor.java下]. 首 ...

  6. 使用ADO对象添加、修改、删除数据

    使用ADO对象对数据库中的数据进行添加.修改和删除等操作.首先创建一个ADO类,通过ADO类连接数据库,并打开记录集.例如,使用ADO对象添加.修改.删除数据,程序设计步骤如下:(1)创建一个基于对话 ...

  7. UITableView 编辑模式(增加-删除-移动---自定义左滑 title)

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  8. AngularJS进阶(十一)AngularJS实现表格数据的编辑,更新和删除

    AngularJS实现表格数据的编辑,更新和删除 效果 实现 首先,我们先建立一些数据,当然你可以从你任何地方读出你的数据 var app = angular.module('plunker', [' ...

  9. C#对象内部属性排序测试

    构建对象: class SortGrid { int indexI; int indexJ; public SortGrid(int x, int y) { indexI = x; indexJ = ...

随机推荐

  1. LaunchScreen.storyboard 设置图片后不显示(转)

    LaunchScreen.storyboard 设置图片后不显示 将图片放在根目录下即可 3D85E99F-A79B-4419-817D-1417E1446624.png   转至:http://ww ...

  2. PHP Token(令牌)设计应用

    转自:http://my.oschina.net/u/912810/blog/358973 <?php class GEncrypt { protected static function ke ...

  3. dll中使用exe中的变量

    注意:输出目录为:Result共享目录 1.exe项目: // EXE.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h" extern" ...

  4. [转]IIS6 伪静态 IIS文件类型映射配置方法 【图解】

    1.右键点击 要设置网站的网站 2.属性 -->主目录 -->配置--> 3.如右侧窗口,找到 .aspx 扩展名-->编辑-->复制 可执行文件的路径-->关闭 ...

  5. [Jobdu] 题目1348:数组中的逆序对

    题目描述: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数. 输入: 每个测试案例包括两行: 第一行包含一个整数n,表示数组 ...

  6. c语言优先级和结合性

    C语言的运算符众多,具有不同的优先级和结合性,我们将它们全部列了出来,方便大家对比和记忆: 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右   ...

  7. initWithNibName和viewDidLoad执行顺序

    转自:http://justsee.iteye.com/blog/1626231 众所周知,IB在加载nib的过程中存在着一些undocument行为,有的行为确实是不可理喻的,因此程序员对IB产生了 ...

  8. 安装vim 出现 terminal libary 错误,解决方法

    通过源码安装vim时,提示缺少terminal libary 而在安装ncurses以后,此问题照样出现. 经过查找资料发现.运行例如以下命令就能够正常安装vim <pre name=" ...

  9. CM本地Yum源的搭建

    CM本地Yum源的搭建 以本地yum源安装CM5为例,解释本地yum源的安装和利用本地yum源安装CM5. Cloudera Manager 5(以下简称CM)默认采用在线安装的方式,给不能联互联网或 ...

  10. IIS添加域名

    前提:域名可用 1.打开网站,点击右侧 绑定 2.添加域名  点击确定 3.结果: ok  配置完成.