[英]How do I fix my java.lang.NullPointerException (android)?
[英]How do I fix android app crashing after a java.lang.NullPointerException
我正面臨java.lang.NullPointerException: Attempt to read from field 'android.widget.ImageView com.cottdev.autoserv.databinding.FragmentArtistProfileBinding.ivEditPersonal' on a null object reference
遷移到androidx后的問題。 請讓我知道我該怎么做。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
binding = DataBindingUtil.inflate(inflater, R.layout.fragment_artist_profile, container, false);
prefrence = SharedPrefrence.getInstance(getActivity());
userDTO = prefrence.getParentUser(Consts.USER_DTO);
baseActivity.headerNameTV.setText(getResources().getString(R.string.my_profile));
parmsCategory.put(Consts.USER_ID, userDTO.getUser_id());
parms.put(Consts.ARTIST_ID, userDTO.getUser_id());
parms.put(Consts.USER_ID, userDTO.getUser_id());
setUiAction();
return binding.getRoot();
}
public void setUiAction() {
binding.ivEditPersonal.setOnClickListener(this);
binding.appbar.addOnOffsetChangedListener(this);
binding.btnDelete.setOnClickListener(this);
binding.btnChange.setOnClickListener(this);
mMaxScrollSize = binding.appbar.getTotalScrollRange();
binding.swOnOff.setOnClickListener(v -> {
if (artistDetailsDTO != null) {
if (NetworkManager.isConnectToInternet(getActivity())) {
paramsUpdate = new HashMap<>();
paramsUpdate.put(Consts.USER_ID, userDTO.getUser_id());
if (artistDetailsDTO.getIs_online().equalsIgnoreCase("1")) {
paramsUpdate.put(Consts.IS_ONLINE, "0");
isOnline();
} else {
paramsUpdate.put(Consts.IS_ONLINE, "1");
isOnline();
}
} else {
ProjectUtils.showToast(getActivity(), getResources().getString(R.string.internet_concation));
}
} else {
ProjectUtils.showToast(getActivity(), getResources().getString(R.string.incomplete_profile_msg));
}
});
我認為問題在於您的綁定。
您可以使用不同的方式來覆蓋onCreateView
首先導入import androidx.fragment.app.DialogFragment;
然后extends DialogFragment
你像這樣覆蓋onCreateview
@Nullable @Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_artist_profile, container, false);
// you can call xml element by using view.findviewbyid ..
return view;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.