Почему моя попытка создать диаграмму возвращает ноль?
В моем ScreenFragment
учебный класс:
Activity parentActivity;
public LineChart chart; // changing private to public didn't help
В своем onCreate()
:
parentActivity = getActivity();
В своем onCreateView()
:
chart = (LineChart) parentActivity.findViewById( R.id.chart_id );
который возвращается null
, Идентификатор определяется в XML-фрагменте:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/fab_margin"
tools:context="io.aeroscope.aeroscope.ScreenFragment">
<com.github.mikephil.charting.charts.LineChart
android:id="@+id/chart_id"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</FrameLayout>
Почему ноль? Почему не создается таблица?
1 ответ
Решение
В основном вы находите представление в родительском действии вместо представления фрагмента.
Так должно быть
onCreateView() {
View view = inflator.inflate(....);
chart = (LineChart) view.findViewById( R.id.chart_id );
return view;
}