Это мой класс фрагментов.Это часть BottomNavigationView:
package com.healthapp.instacare;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import com.google.android.gms.auth.api.signin.GoogleSignIn;
import com.google.android.gms.auth.api.signin.GoogleSignInAccount;
public class HomeFragment extends Fragment{
GoogleSignInAccount acct = GoogleSignIn.getLastSignedInAccount(getActivity());
TextView name= (TextView)getView().findViewById(R.id.name);
TextView surname= (TextView)getView().findViewById(R.id.surname);
TextView id= (TextView)getView().findViewById(R.id.id);
TextView email= (TextView)getView().findViewById(R.id.email);
ImageView profimg = (ImageView)getView().findViewById(R.id.profimg);
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getinfo();
}
private void getinfo() {
if (acct != null) {
String personName = acct.getDisplayName();
String personFamilyName = acct.getFamilyName();
String personEmail = acct.getEmail();
String personId = acct.getId();
Uri personPhoto = acct.getPhotoUrl();
name.setText(personName);
surname.setText(personFamilyName);
id.setText(personId);
email.setText(personEmail);
profimg.setImageURI(personPhoto);
}
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_profile,container,false);
}
}
Это метод, который Google предоставил, используя Документацию:
GoogleSignInAccount acct =
GoogleSignIn.getLastSignedInAccount(getActivity());
if (acct != null) {
String personName = acct.getDisplayName();
String personGivenName = acct.getGivenName();
String personFamilyName = acct.getFamilyName();
String personEmail = acct.getEmail();
String personId = acct.getId();
Uri personPhoto = acct.getPhotoUrl();
}
Как я могу реализовать его во фрагменте?Я новичок в кодировании Android Studio.
Я уже создал несколько TextViews и ImageViews в файле .xml
для фрагмента, и я надеялся заменить эти тексты и URL-изображения на изображения из информации аккаунта Googleи отобразите его.
Я пробовал приведенный выше код, но, возможно, он зависает из-за исключения NullPointerException.