#android
#Android
Вопрос:
Я очень новичок в Android, я учусь.
Я создал простую систему входа в систему, где она будет взаимодействовать с php. Работает нормально,
Прямо сейчас есть 3 действия,
1-й — вход 2-й — меню 3-й — просмотр
при входе в систему они должны указать свое имя пользователя, я хочу получить имя пользователя в представлении (3rd) Как я могу его получить? Я попробовал Google и прочитал, ни один из них не работает для меня: (
я использую
final Button btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
EditText name = (EditText)findViewById(R.id.name);
});
Ответ №1:
То, что вы ищете, — это намеренные «дополнения». Это дополнительные фрагменты информации, передаваемые от действия к действию по намерению.
В исходном коде моего приложения Google Moderator для Android есть пример.
Создание намерения, которое содержит некоторую дополнительную информацию (здесь, ‘идентификатор серии’):
Intent intent = new Intent(activity, TopicActivity.class);
intent.putExtra("seriesId", seriesId);
//...
activity.startActivity(intent);
При другом действии извлечение значения из того же намерения (теперь из намерения запуска) дополнительно:
int seriesId = getIntent().getIntExtra("seriesId", -1);
В этом примере -1 — это значение, которое будет возвращено, если нет «seriesId», переданного с дополнительным.
Ответ №2:
Вы можете присвоить имени пользователя общедоступное статическое значение, чтобы к нему можно было получить доступ из любого класса в вашем приложении.
Или вы можете передать его в своих действиях, используя метод Intent putExtra(..)
http://developer.android.com/reference/android/content/Intent.html
Ответ №3:
Вы можете получить текст из EditText
виджета с помощью getText()
, за которым следует toString()
. Итак, ваш код должен быть:
final Button btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
EditText nameWidget = (EditText) findViewById(R.id.name);
String username = nameWidget.getText().toString();
});
Комментарии:
1. Нет, он хочет передавать данные между действиями, получил просто значение EditText