Возможно, я не понимаю тонкости ParseUser, но из того, что я могу сказать, объекты ParseUser наследуют метод .getString. В моей программе я пытаюсь получить строку из поля «screenName» моего объекта ParseUser. Я использовал эту линию:Android: Parse .getString метод возвращает null для поля текущего пользователя
ParseUser currentUser = ParseUser.getCurrentUser();
для получения текущего объекта пользователя, и я пытаюсь получить доступ к области ScreenName как таковой:
String screenNameString = (String) currentUser.get("screenName");
Это возвращает нуль к screenNameString, и я не Конечно, почему. Я проверил, что currentUser захватил правильный пользовательский объект (я могу видеть правильное имя пользователя и ObjectID).
Цель этого кода - в конечном итоге захватить поле screenName текущего пользователя и записать его в TextView. Вот остальная часть моего кода, если вы обнаружите больше проблем.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_profile);
// grab current user
ParseUser currentUser = ParseUser.getCurrentUser();
// TODO implement call backs for each field
// TODO this doesn't work :(look up ParseUser methods for grabbing stuff
if (currentUser != null) {
/* Set user specific views*/
// Set screenName
TextView screenNameTextView = (TextView) findViewById(R.id.screenName);
String screenNameString = (String) currentUser.get("screenName");
screenNameTextView.setText(screenNameString);
// Set bio
TextView bioTextView = (TextView) findViewById(R.id.bio);
String bioString = (String) currentUser.get("bio");
bioTextView.setText(bioString);
} else {
// Error log
Log.e("ProfileActivity", "could not locate CurrentUser");
}
}
Это метод onCreate для деятельности, которая показывает пользователю их профиль в моем приложении. Обратите внимание, что есть также поле «bio», которое я пытаюсь захватить. Это дает мне ту же проблему. Я добавил оба поля в качестве столбцов ParseUser в панель управления данными Parse. Если у кого-нибудь есть какие-либо советы или помощь, я бы очень признателен! Благодаря!
Ahh Я вижу, так хорошая стратегия была бы сделать выборку в фоновом режиме, а затем установить текст в обратном вызове с помощью объекта, который он находит? Все еще привыкший к Парсу, но это то, что я думаю. – ThePartyTurtle
да, точно. Дайте мне знать, если это работает –
Работает отлично! Мне придется привыкнуть использовать обратный вызов. Спасибо, Олег! – ThePartyTurtle