AndroidDev 板


LINE

目前听起来的感觉 我个人是猜测你是用Button/Spinner/其他AdapterView当作切换的开关 然後切换时,换ListView的内容达成的 因为你有提到: 1. 四个ListView是用共用同一个元件 2. 个别ListVeiw给了不同的Listener 可是最後点进去都是执行某固定一个Listener 不管有没有猜对,都还是建议你用下面几种方法解决会比较好: A. TabHost或Spinner + Fragment B. ViewPager C. ViewPager + Fragment 难度由简到难:B, C, A (纯属个人想法) 最後,如果我上面猜测正确的话 那又该如何就现有的基础去修正(假设客户就是希望要长这样) 首先先要了解一件事,虽然宣告了四个ListView变数 实际上四个ListView存的都是同一个View 也就是改了listview1後,2 3 4的内容都会跟着一起动 原因请去Google: java 参考 所以 第一步:其实只要宣告一个ListView变数就好了 第二步:只有一个ListView,那表示Listener也只要一个就好了 第三步:假设你四个Adapter都是用ArrayAdapter<String>,那Listener可以这样写: onItemSelected(AdapterView<?> parent, View v, int position, long id) { ArrayAdapter<String> adapter = (ArrayAdapter<String>) parent.getAdapter; String data = adapter.getItem(position); // data即为正确选到的资料 ... } 但实际上该怎麽写,就要视你的Adapter是怎麽写来决定了 ※ 引述《asifsea (sea)》之铭言: : layout配置只放一个listview,id为listclinic : java档里宣告了四个listview,分别是listview1,2,3,4(如眼科系列诊所,小儿科系列诊所) : 四个listview共用元件皆为findViewById(R.id.listclinic1) : 但是四个listview里的内容是不同的。 : 我想要点进每个listview的项目都可以正确显示其代表的诊所简介 : 如眼科系列诊所点进Item甲诊所→显示甲诊所简介 : 现在遇到的问题是,监听事件要如何知道我指向的是四个中的哪个listview : 1.有试过个别都给一个监听器,如: : listView1.setOnItemClickListener(Listener1); : listView2.setOnItemClickListener(Listener2); : 但是似乎无效,其不同listview的Item点进去都是显示连到甲诊所资料 这里可以试看看换执行setOnItemClickListener顺序 你会发现不同的ListView的item点进去会变成都是显示乙(或丙、丁...)诊所的资料 那就代表我猜的没错了XD : 2.onItemSelected(AdapterView<?> parent, View v, int position, long id) : parent,是用来选择哪个listview的,但点进去都是显示连到甲诊所资料 : 要如何才能正确点进指定诊所,显示正确的简介?? -- --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.126.68.4
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1396633052.A.A8B.html
1F:→ asifsea:谢谢t大的回答十分的清楚!我是用Spinner项目选取来切换。 04/05 11:55
2F:→ asifsea:以为是一个listview装一个adapter,没想到都指向同一个 04/05 11:58
3F:→ asifsea:因为样式是采取simple_list_item_2,一行名称 一行放地址 04/05 12:07
4F:→ asifsea:是用SimpleAdapter和ArrayList<HashMap<String, String> 04/05 12:10
现在回来看这篇,觉得我打得有点跳痛,没想到你看得懂XD 其实以目前的结构为基础的话,解法也蛮多的 就我原本的解法要改成SimpleAdapter的话 那HashMap最好加上跟原始资料相关的Item map.put("data_id", String.valueOf(id)); 只是我不知道SimpleAdapter用getItem会取到什麽 (懒得试了) 所以Listener就跳过 ---------------------------------------------------------- 还有一个更偷吃步的方法 一样改成一个ListView变数 但Listener设定四个 然後在Spinner里的OnItemSelectedListener里去换ListView的Listener: onItemSelected(AdapterView<?> parent, View view, int position, long id) { switch(position) { case 0: listview.setOnItemClickListener(Listener1); break; case 1: listview.setOnItemClickListener(Listener2); break; ... } } 理论上,这样应该也可以达到你想要的结果 ※ 编辑: tails32100 (59.126.68.4), 04/05/2014 13:10:28
5F:推 asifsea:说来惭愧...采取SimpleAdapter不会运用在Listener里>< 04/05 20:23
6F:→ asifsea:所以就直接用t大所教的偷吃步法来改,一来是简单明了。 04/05 20:24
7F:→ asifsea:二来其Item所要跳页显示的资料庞大,采取四个Listener的话 04/05 20:25
8F:→ asifsea:往後很容易修改资料,甚至是分清为哪个系列的简介内容。 04/05 20:25
9F:→ asifsea:这listview烦恼我很久了,google查很久都没相同案例 04/05 20:26
10F:→ asifsea:真的很谢谢t大这麽有耐性的回答,其解法十分易懂,受教了~ 04/05 20:27
11F:→ asifsea:冒昧问一句:请问google map api2在AVD模拟器到底能否呈现? 04/05 20:43
12F:→ tails32100:理论上应该是不行吧...我没用过AVD开发过Orz... 04/07 00:10
13F:→ asifsea:後来不用内建的AVD 直接魔神模拟器就解决无法显示问题 04/15 15:05







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP