Как вы можете передать словарь в новое действие в Android Studio?

#java #android

#java #Android

Вопрос:

мой ключ и значение должны быть строкового типа

 Dictionary AccountDetail= new Hashtable();
            AccountDetail.put("PersonName",personName);
            AccountDetail.put("Email",personEmail);
 

Но в putString передается только одно значение переменной, и это выдает ошибку

 startActivity(new Intent(getApplicationContext(),Maps.class)
.putExtra("AccountDetails" ,AccountDetail));
finish();
 

ошибка гласит, что не удается разрешить метод putExtra (java.lang.string.java.util.dictionary)
я могу использовать цикл for и отправлять все элементы, но если есть способ передать все значения сразу, дайте мне знать

Комментарии:

1. Я думаю, вы можете передать его как Serializable Extra, потому что Hashtable реализует Serializable.

Ответ №1:

Я предлагаю вам создать новый класс для подробной информации о вашей учетной записи, а затем реализовать сериализуемый или разделяемый интерфейс. Затем вы можете передавать сложные данные в другое действие через Intent.

Ответ №2:

Вместо этого используйте пакет:

 Bundle AccountDetail = new Bundle();
AccountDetail.put("PersonName", personName);
AccountDetail.put("Email", personEmail);