作者uok (宇宙油王)
看板AndroidDev
标题[问题] 关於base adapter的问题
时间Mon Jul 25 22:27:41 2011
开发层: (应用/框架/库/核心)
应用
问题:
如何只做adapter的切换控制ListView?
输入:
假设我今天做了一个点菜的功能选项
基本选单
-----------------------------
饭类
-----------------------------
面类
-----------------------------
炒菜
----------------------------
当我点下其中任何一个选项时
我就切换adapter,让选单内容变化
如下
饭类
------------------------------
排骨饭
------------------------------
鸡腿饭
------------------------------
叉烧饭
-------------------------------
可是当我点下叉烧饭的时候
menu却会自动跳到「面类」的地方去
这是因为我只使用的是同一个listview
click事件全部都是相同的
所以不管会到第几层
他都只会接受原来的命令
但是因为我的menu选项层数非常的多
大概会有五六层以及一百多个选项
为每一个选项的子选项都设置一个新的listview实在太费功夫又吃资源
所以我想请各位比较有经验的朋友指引一个方向
我该怎样用最不吃资源的方法去把这个选菜系统做出来呢?
又,如果我只想做adapter的切换
要怎麽样才不会让click事件互相干扰??
--
程式是鲜活的、是有生命的、是热血澎派而且豪情奔放的
它代表着人们处理问题时所展现的智慧
亦代表着人类与未知沟通时独到的巧思
没有它,电脑也不过是一堆装着线路的垃圾铁壳
但是因为有了它,这些无机物因此而有了心跳
程式语言不是令人费解的符号集合体而已,它们是......
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.79.49
1F:推 tomap41017:把onItemClick之类的函式由adapter implement 07/25 23:15
2F:→ tomap41017:并在切换时同时设定adapter及ItemClickListener 07/25 23:15
您是指 XXXX extends BaseAdapter implement ClickListener这样吗?
然後每个CLICK事件都绑定在ADAPTER上?
3F:推 givemepass:切换到新的ListView的时候 把旧的ListView finish? 07/25 23:15
4F:→ givemepass:反正你换过去是新的页面 需要上一页的时候 在重建就好 07/25 23:16
※ 编辑: uok 来自: 61.228.79.49 (07/25 23:49)
※ 编辑: uok 来自: 61.228.79.49 (07/25 23:52)
5F:推 givemepass:你在OnClickItem的时候 可以根据id来判断是按下哪一个 07/26 09:31
後来解决了,只要在选项里面重新设计新的ClickListaner就好了
不过又衍生出新的问题= =
这种方法建构出来的click事件只能使用一次
如果回到上一个画面再点一次就又消失了
这是为什麽呢???
※ 编辑: uok 来自: 220.128.150.66 (07/26 11:21)
6F:推 givemepass:你把程式码上传吧! 这样看会比较清楚 07/26 13:03
7F:→ tomap41017:对!!绑在adapter上不是比较简单吗XD 07/27 02:24
8F:→ tomap41017:因为你onItemClick是在adapter内,所以可以轻易知道 07/27 02:24
9F:→ tomap41017:现在在哪一层 07/27 02:24
10F:→ tomap41017:不知我对你的问题理解有没有错误 07/27 02:24