无法将值放入 HashMap
Not able to put values in HashMap
我在 Adapter 中有一个 HashMap,我想在其中存储一个字符串和一个双精度数。我从我的模型中获取了这两个值,它们工作正常,就像我记录它时一样,它是正确的。但是每次返回 null 时,我都无法将这些值放入 HashMap。
holder.add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.i("DishName", String.valueOf(dishDetailsModel.getDishName())); //working fine
Log.i("Price", String.valueOf(dishDetailsModel.getPrice())); //working fine
String dishName = String.valueOf(dishDetailsModel.getDishName());
Double price = Double.valueOf(String.valueOf(dishDetailsModel.getPrice()));
mOrderDetails.put(dishName, price); //not working
}
});
mOrderDetails.put("Pizza", 45.0); //working fine
Gson gson = new Gson();
String details = gson.toJson(mOrderDetails);
Intent intent= new Intent("OrderDetails");
Log.i("details", details); //only pizza is there
intent.putExtra("CartDetails", details);
LocalBroadcastManager.getInstance(mContext).sendBroadcast(intent);
}
我认为问题不在于插入,而在于对事件及其触发时间的理解。
onclick 事件中的代码将 运行,嗯,点击事件,但其余代码将 运行 立即。
尝试调试应用程序,在各行中放置断点,尝试了解事情发生的原因和时间。
相信我,试着自己去理解,这对我们的学习过程会有好处。
我在 Adapter 中有一个 HashMap,我想在其中存储一个字符串和一个双精度数。我从我的模型中获取了这两个值,它们工作正常,就像我记录它时一样,它是正确的。但是每次返回 null 时,我都无法将这些值放入 HashMap。
holder.add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.i("DishName", String.valueOf(dishDetailsModel.getDishName())); //working fine
Log.i("Price", String.valueOf(dishDetailsModel.getPrice())); //working fine
String dishName = String.valueOf(dishDetailsModel.getDishName());
Double price = Double.valueOf(String.valueOf(dishDetailsModel.getPrice()));
mOrderDetails.put(dishName, price); //not working
}
});
mOrderDetails.put("Pizza", 45.0); //working fine
Gson gson = new Gson();
String details = gson.toJson(mOrderDetails);
Intent intent= new Intent("OrderDetails");
Log.i("details", details); //only pizza is there
intent.putExtra("CartDetails", details);
LocalBroadcastManager.getInstance(mContext).sendBroadcast(intent);
}
我认为问题不在于插入,而在于对事件及其触发时间的理解。
onclick 事件中的代码将 运行,嗯,点击事件,但其余代码将 运行 立即。
尝试调试应用程序,在各行中放置断点,尝试了解事情发生的原因和时间。
相信我,试着自己去理解,这对我们的学习过程会有好处。