在单个活动中使用多个按钮

问题描述 投票:-3回答:1

我在一个活动中有56个切换按钮和8个常规按钮。 8个按钮不是问题,因为我使用单个onClickListener类,其中包含一个switch case来确定每个按钮的作用。

问题出在56切换按钮上。我知道我可以做同样的事情但是56个案例的开关案例似乎是处理事情的一种不好的方式。

切换按钮仅用于设置布尔值,因此我假设一种方法是使用与需要更改的布尔值对应的onCheckedChangedListener传递值。

我是Android开发的新手,所以示例代码和链接非常有用。

如果需要,我会发布任何相关的代码,但我认为我的解释已经足够了。

java android
1个回答
0
投票

你可以逃脱一个案件。将所有布尔值保留在Map中,并保留ids->值的映射。然后你的OnCheckedChangeListener(不是OnClickListener)只需要用该id设置哈希映射中的值。如果你想将id与逻辑分开一点,请保留id-> name和name-> boolean的映射。无论哪种方式,它最终都会有一个监听器,可以在没有任何ifs或case语句的情况下为所有56个切换器工作

© www.soinside.com 2019 - 2024. All rights reserved.