Я написал строки кода из моего предыдущего проекта, который загружает галерею при нажатии на изображение профиля. Я скопировал и вставил код из этого проекта сюда, чтобы внести соответствующие изменения, ожидая работоспособности (поскольку он отлично работает в другом приложении). Но я получаю исключение Null Pointer.
Attempt to invoke virtual method 'void de.hdodenhof.circleimageview.CircleImageView.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
at com.kujinn.meetup.Settings.onCreateView(Settings.java:78)
Я пытался увидеть, случайно ли я использовал один и тот же идентификатор дважды, или я использовал неправильный вид, но ничего не казалось неуместным.
Java Код:
private CircleImageView profileImage
profileImage = (CircleImageView) getActivity().findViewById(R.id.edit_profile_image);
profileImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//If version is greater than Marshmallow, User Permissions in required
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.M){
//Display message that user has denied permission
if(ContextCompat.checkSelfPermission(getActivity(), Manifest.permission.READ_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED){
Toast.makeText(getActivity(), "Permission Denied.", Toast.LENGTH_LONG).show();
ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},1);
} else{
CropImage.activity()
.setGuidelines(CropImageView.Guidelines.ON)
.setAspectRatio(1,1)
.start(getActivity());
}
}
}
});
XML Код
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/edit_profile_image"
android:layout_width="184dp"
android:layout_height="177dp"
android:layout_marginTop="64dp"
android:src="@drawable/ic_person_black_24dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/edit_profile_toolbar">
</de.hdodenhof.circleimageview.CircleImageView>
Any help would be greatly appreciated ~