最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
J2ME 实现可伸展目录树TreeList
时间:2022-07-02 17:42:52 编辑:袖梨 来源:一聚教程网
J2ME里面有自带的List类,但是功能太弱,没有实现View和Model的分离,所以操作起来比较费事。本来事想写一个Canvas的TreeList,但是画起来算坐标又太麻烦,所以选取了一个折中的方法,继承List,实现一个操作起来比较方便的组件。
目的:
1.可伸缩的目录树结构,暂时先实现两层。
2.Label和存储内容分离。
3.激活和非激活图片分开。
4.通过选择事件可以准确快速找到对应内容
5.存储内容无关性,里面可以放置任何Object
实现思路:
1.封装一个ExpandItem类,用来存储每一条数据。
/**
* 默认图片
*/
private String imagePath="";
/*
* 激活图片,如果为空说明此图片无效
*/
private String selectImgPath=null;
/**
* 组
*/
public static int GROUP=1;
/**
* 记录
*/
public static int ITEM=0;
/**
* 是否选中,如果选中则默认为展开状态
*/
private boolean ifselected=false;
/**
* 显示Label
*/
private String label;
/**
* 类型:组,记录
*/
private int type;
/**
* 存储的对象
*/
GROUP表示这个ITEM是一个父节点,下面包含字节点,这样它的Content将是一个Vector.
ITEM表示这个ITEM是根节点。
selectImgPath,是激活后的图标,可以为空,为空的时候选择了这个ITEM图标不变。
然后就是ExpandList类,此类的数据结构如下:
private Vector itemList = new Vector();
目的:
1.可伸缩的目录树结构,暂时先实现两层。
2.Label和存储内容分离。
3.激活和非激活图片分开。
4.通过选择事件可以准确快速找到对应内容
5.存储内容无关性,里面可以放置任何Object
实现思路:
1.封装一个ExpandItem类,用来存储每一条数据。
/**
* 默认图片
*/
private String imagePath="";
/*
* 激活图片,如果为空说明此图片无效
*/
private String selectImgPath=null;
/**
* 组
*/
public static int GROUP=1;
/**
* 记录
*/
public static int ITEM=0;
/**
* 是否选中,如果选中则默认为展开状态
*/
private boolean ifselected=false;
/**
* 显示Label
*/
private String label;
/**
* 类型:组,记录
*/
private int type;
/**
* 存储的对象
*/
GROUP表示这个ITEM是一个父节点,下面包含字节点,这样它的Content将是一个Vector.
ITEM表示这个ITEM是根节点。
selectImgPath,是激活后的图标,可以为空,为空的时候选择了这个ITEM图标不变。
然后就是ExpandList类,此类的数据结构如下:
private Vector itemList = new Vector();
相关文章
- 时空中的绘旅人天宇之间怎么玩 绘旅人天宇之间活动玩法介绍 12-25
- QQ2024年度报告怎么看 2024qq年度报告玩法介绍 12-25
- 归龙潮珠砂什么时候up 归龙潮红缘绮梦卡池介绍 12-25
- 王者荣耀S38赛季有什么更新 12-25
- 王者荣耀S38赛季有什么更新 王者荣耀S38赛季更新内容介绍 12-25
- 世界之外12.25有什么更新 世界之外12月25日更新内容介绍 12-25