我在Android中的savedInstanceState中放置值有问题。我试图在互联网上找到解决方案,但我没有什么需要。也许有人知道哪里有问题。我需要把HashMap>到savedInstanceState,并检索onCreate方法。有没有人有像这样的问题,谁知道我怎么能解决这个问题。 谢谢你的时间。
答案 0 :(得分:7)
您可以使用putSerializable。 E.g。
savedInstanceState.putSerializable("KEY", hashMapInstance);
答案 1 :(得分:0)
尝试:
private HashMap<String, String> savedInstanceMap = new HashMap<>();
@Override
public void onSaveInstanceState(@NonNull Bundle outState) {
savedInstanceMap.put("selectedFuel_type_Id", selectedFuel_type_Id);
outState.putSerializable("savedBundle", savedInstanceMap);
super.onSaveInstanceState(outState);
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
savedInstanceMap = (HashMap<String, String>) savedInstanceState.getSerializable("savedBundle");
selectedFuel_type_Id = savedInstanceMap.get("selectedFuel_type_Id");
}