我正在尝试按照教程进行操作:http://www.rbgrn.net/content/307-light-racer-20-days-61-64-completion 但只需快速复制和粘贴,我立即收到以下行的错误"类型不匹配:无法从对象转换为媒体播放器":
MediaPlayer mp = players.get(music);
附加信息:
private static HashMap players = new HashMap();
和"类型不匹配:无法从元素类型对象转换为媒体播放器":
for (MediaPlayer p : mps) {
附加信息:
Collection mps = players.values();
任何想法为什么以及如何解决这个问题?PS我是一个新手程序员,所以请在必要时解释所有细节。谢谢。
该行有问题:
private static HashMap players = new HashMap();
你必须写
private static HashMap<Int,MediaPlayer> players = new HashMap();
在每个"集合 mps"行上,您都有一个投射到(媒体播放器)
我将哈希映射更改为稀疏数组:
这一行:
private static HashMap players = new HashMap();
对此:
private static SparseArray<MediaPlayer> players = new SparseArray<MediaPlayer>();
然后在我使用的每个集合 mps 事件中:
for(int i = 0; i < players.size(); i++)
{
if(players.get(i).isPlaying())
players.get(i).pause();
}
或类似的东西