android - 如何在 ModelView 中使用 HashMap?
问题描述
我第一次尝试使用 ViewModel,但出现了一个我无法解决的错误。我收到消息“无法解决 put”,我该如何解决这个问题?
公共类 SharedViewModel 扩展 ViewModel {
public HashMap<Integer, MutableLiveData<String>> answers = new HashMap<Integer, MutableLiveData<String>>(){
answers.put(1, new MutableLiveData<String>())
answers.put(2, new MutableLiveData<String>())
answers.put(3, new MutableLiveData<String>())
};
public MutableLiveData<String> getAnswer(int questionId) {
return answers.get(questionId);
}
public void setAnswer(int questionId, String answer) {
if (answers.get(questionId) != null) {
answers.get(questionId).setValue(answer);
}
}
}
解决方案
而不是这个
public HashMap<Integer, MutableLiveData<String>> answers = new HashMap<Integer, MutableLiveData<String>>(){
answers.put(1, new MutableLiveData<String>())
answers.put(2, new MutableLiveData<String>())
answers.put(3, new MutableLiveData<String>())
};
做这个
public HashMap<Integer, MutableLiveData<String>> answers = new HashMap<Integer, MutableLiveData<String>>(){{
put(1, new MutableLiveData<String>())
put(2, new MutableLiveData<String>())
put(3, new MutableLiveData<String>())
}};
推荐阅读
- networking - 努力在家用电脑上设置“网络”驱动器以模仿软件开发的工作环境
- augmented-reality - 为什么 Pokemon Go 在不受支持的设备上运行?
- influxdb - 如何在 Grafana/InfluxDB 中创建百分比/比率列?
- c# - 无法在 rdlc 报告 asp.net 上显示数据
- python - 不同模块之间的全局变量共享行为不同
- azure - Azure SFTP 逻辑应用
- apache-kafka - 添加新的 avro 消费者时无法解析主机:rest-proxy
- php - 多个循环一起运行
- php - 从本地主机向用户发送少量邮件后 SMTP 显示错误
- javascript - HTML 5画布绘图图像不显示css