Получить ConstraintLayout во фрагменте - PullRequest
1 голос
/ 14 февраля 2020

Добрый день,

Я хотел бы получить ConstraintLayout во фрагменте, однако при отладке он выдает эту ошибку `

java .lang.NullPointerException: Attempt вызвать виртуальный метод 'int androidx.constraintlayout.widget.ConstraintLayout.getChildCount ()' для нулевой ссылки на объект

в этой строке

constraintSet.clone (constraintLayout) ;

Так вот моя активность используется для фрагмента и ниже кода фрагмента

фрагмент_активности:

 <?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.something.fragments.Fragment"
    android:id="@+id/this_fragment">

...



</androidx.constraintlayout.widget.ConstraintLayout>

А вот мой код:

public class Fragment extends AppCompatDialogFragment {

View view;

@SuppressLint("InflateParams")
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    final AlertDialog.Builder builder = new AlertDialog.Builder(Objects.requireNonNull(getActivity()), R.style.Some_Theme_Name);
    LayoutInflater inflater = getActivity().getLayoutInflater();
    view = inflater.inflate(R.layout.fragment_activity, null);

    ConstraintLayout constraintLayout = getActivity().findViewById(R.id.this_fragment);
    ConstraintSet constraintSet = new ConstraintSet();
    constraintSet.clone(constraintLayout);


    return builder.create();
}

}

Помощь будет очень признателен

1 Ответ

1 голос
/ 14 февраля 2020

Попробуйте так:

    ConstraintLayout constraintLayout = view.findViewById(R.id.this_fragment);
    ConstraintSet constraintSet = new ConstraintSet();
    constraintSet.clone(constraintLayout);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...