当在android中单击可扩展列表视图子项时,如何播放声音?

时间:2015-08-04 11:18:50

标签: android expandablelistview

我在点击子列表时尝试播放声音。

expListView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
    @Override
    public boolean onChildClick(ExpandableListView expandablelistview, View clickedView, 
                               int groupPosition, int childPosition, long childId) {
       switch (childPosition) {
                case 0:
                    mp = MediaPlayer.create(getApplicationContext(), R.raw.beep1);
                    mp.start();
                    break;
                case 1:
                    mp = MediaPlayer.create(getApplicationContext(), R.raw.beep17);
                    mp.start();
                    break;

            }
        return false;
   }
});

我试过这个,但这对每个孩子来说并不是唯一的,因为我想为每个孩子播放不同的声音。 如果有办法将声音附加到每个列表儿童,请告诉我。 感谢。

1 个答案:

答案 0 :(得分:1)

您可以将其作为tag附加到每个子视图。

  

标记可用于标记其层次结构中的视图,并且不必在层次结构中是唯一的。标签还可用于在视图中存储数据,而无需借助其他数据结构。

点击后,您可以使用getTag进行检索并播放。

虽然如果你有太多的观点我不会尝试自己附加声音,因为它们可能会根据长度填满你的记忆。我宁愿将标签设置为识别声音的字符串,并从其他地方获取声音对象本身。