1.1 使用例子
1.1.1 单棵树:
1 前台js中
custom_ztree({url: webRoot+'/index/role-tree.htm',
onsuccess:function(){closeFun();},
inputObj:'roleName',
width:500,
height:600,
title:'选择角色',
postData: {systemId:$("#systemId").attr("value")},
nodeInfo: ['type','roleId','roleName'],
multiple:true
});
2 后台Action中拼树的写法
@Action("role-tree")
public String roleTree() throws Exception{
List<ZTreeNode> treeNodes = new ArrayList<ZTreeNode>();
String result ="";
BusinessSystem system = businessSystemManager.getBusiness(businessSystemId);
List<Role> roles = new ArrayList<Role>();
String[] roleids = roleIdStrs.split(",");
List<Long> roleIds = new ArrayList<Long>();
for(String roleid:roleids){
roleIds.add(Long.parseLong(StringUtils.trim(roleid)));
}
roles = roleManager.getAllRolesExceptRole(businessSystemId,roleIds);
ZTreeNode root = new ZTreeNode("system~~system","0",system.getName(), "true", "false", "", "", "folder", "");
treeNodes.add(root);//将节点放入节点集合中
for(Role role:roles){
root = new ZTreeNode("role~~"+role.getId(),"system~~system",
role.getName(), "false", "false", "", "", "folder", "");
treeNodes.add(root); //将节点放入节点集合中
}
result = JsonParser.object2Json(treeNodes);//将节点集合封装为json字符串
renderText(result);//将节点显示在页面中
returnnull;
}
其页面展示如图:
1.1.2 页签树:
custom_ztree({tree:{'标签1':{url:webRoot+'/vehicle/vehicle-choose-all-unused-car-tree.htm',
onsuccess:function(){closeFun1();},
nodeInfo:['type','id'], postData:{startDate:startDate,endDate:endDate}},
'标签2':{url:webRoot+'/vehicle/vehicle-choose-all-unused-car-tree.htm?startDate='
+startDate+'&endDate='+endDate,
multiple:true}},
onsuccess:function(){closeFun();},
width:500,
height:600,
title:'选择车辆'
});
Matrix6.0.0.RC1Demo演示登陆地址:http://demo.imatrix.net.cn:8888/imatrix
如有使用iMatrix平台问题请登录iMatrix平台论坛咨询:
http://bbs.imatrix.net.cn/forum.php?mod=forumdisplay&fid=37
或者加入扣扣群307599527
相关推荐
7. **自定义View与XML布局**:为了让自定义View易于在XML布局中使用,需要提供对应的构造函数和属性。`attr.xml`文件用于定义自定义属性,`LayoutInflater`用于实例化自定义View。 8. **自定义View的最佳实践**:...
在构造函数中,我们创建了一个线程,并在 run 函数中使用 while 循环来刷新界面。在每次循环中,我们使用 postInvalidate 函数来强制 UI 线程刷新界面,并使用 Thread.sleep 函数来控制旋转的速度。 在主 Activity ...
iMatrix6.0.0Dev:iMatrix平台6.0.0.Dev源码
这个过程涉及到多个关键知识点,包括权限管理、图片选择、Intent使用、自定义裁剪以及图像处理等。下面我们将详细探讨这些方面。 首先,权限管理是Android开发中的基础,特别是涉及到用户存储空间时。Android 6.0...
这些可以通过自定义属性来实现,将它们添加到res/values/attrs.xml文件中,然后在代码中解析并使用。 至此,我们就创建了一个自定义的圆形头像组件,它不仅能展示圆形图片,还能在底部显示带有自定义颜色、透明度和...
总结,这个项目展示了如何在Android应用中使用ZXing库实现自定义的二维码扫描功能,包括调整扫描框大小、控制手电筒和访问相册的权限管理,以及在扫描框下方添加额外的UI元素。通过这个过程,开发者可以深入理解...
在Android开发中,自定义控件是提升用户体验和实现独特设计的重要手段。本文将深入探讨如何基于Android系统,创建一个可拖动、可缩放且能填充自定义内容的控件,类似于一个可操作的RelativeLayout。我们将从以下几个...
总结来说,"自定义控件+Camera+Matrix实现3D百叶窗效果"这个项目涵盖了Android开发中的多个高级技术,包括自定义控件、Camera对象的使用、Matrix矩阵变换以及动画的创建和管理。理解并掌握这些技术,对于提升Android...
【标题】:“C# DataMatrix.net使用” 在C#编程环境中,DataMatrix是一种二维...通过深入研究这些内容,开发者可以掌握在C#中使用`DataMatrix.net`生成和解析DataMatrix条形码的技能,从而提升项目中的条码处理能力。
- 在Adapter中使用上述的图片加载库,为每个ViewPager的Item加载图片。 5. **优化性能**: - 使用低分辨率的预览图进行快速显示,然后再加载高清图,提高用户体验。 - 对大图片进行压缩,避免内存溢出(OOM)。 ...
在Android开发中,自定义相册和相机功能是常见的需求,尤其在个性化应用或提高用户体验时更为重要。本文将深入探讨如何在Android中实现自定义相册和相机功能,以及涉及的相关技术点。 首先,自定义相册通常涉及到对...
总的来说,这个3D百叶窗效果的实现涉及到了Android图形渲染的高级概念,包括Camera和Matrix的使用,以及自定义View的绘制流程。通过理解和实践这个例子,开发者可以增强对Android图形系统和动画的理解,为创建更丰富...
在Android中,我们可以使用ImageView配合GestureDetector和Matrix实现裁剪框的移动和缩放;iOS则可以使用UIImage+Crop的功能来实现。 7. 图片裁剪与保存: 裁剪后,我们需要将选中的部分截取出来并保存。Android的...
在Android平台上,开发自定义相机应用是一个常见的需求,特别是在实现特定功能或优化用户体验时。`camera2` API是Google在Android Lollipop(API level 21)中引入的一个新框架,它提供了对相机硬件更底层的访问,...
在Android开发中,创建一个自定义的照片墙是一个常见的需求,这通常涉及到自定义ViewPager和ImageView的使用。本文将深入探讨如何通过自定义这两个组件来实现图片的放大、缩小功能以及平滑的翻页效果。 首先,让...
在IT行业中,自定义裁剪功能是常见的图像处理需求,特别是在移动应用和Web开发中。这个"自定义裁剪完整Demo"提供了一种解决方案,它涵盖了三种不同的裁剪模式:A. 底图可缩放,浮层不变;B. 底图不变,浮层不变;C. ...
在Android开发中,自定义控件是提升应用用户体验和实现独特设计的重要手段。"Android 自定义缩放控件ImageView"这个主题聚焦于如何为Android应用创建一个能够支持手势缩放的自定义ImageView。通常,系统默认的...
5. **添加到工具栏**:为了让用户能够方便地在应用程序中使用这个自定义控件,你需要将其添加到工具箱。在Visual Studio中,可以右键点击工具箱,选择“选择项”,然后浏览找到你的控件dll文件,将其添加进来。 ...
8. **集成与使用**: 自定义的`CircularImageView`可以在布局XML文件中直接使用,就像普通的ImageView一样,只需指定其类名即可。 9. **进一步扩展**: 可以添加更多的功能,比如添加边框、阴影效果或者动态过渡动画...