1
Когда я переопределяю функцию public Object instantiateItem
от MainAdapter extends PagerAdapter
, по строке container.addView(
, он падает. Я получаю журналКак программно добавлять представления в ViewContainer?
java.lang.IllegalArgumentException: Cannot add a null child view to a ViewGroup
at android.view.ViewGroup.addViewInLayout(ViewGroup.java:3909)
at android.view.ViewGroup.addViewInLayout(ViewGroup.java:3890)
at android.support.v4.view.ViewPager.addView(ViewPager.java:1302)
at android.view.ViewGroup.addView(ViewGroup.java:3744)
at com.jfeinstein.jazzyviewpager.JazzyViewPager.addView(JazzyViewPager.java:127)
at com.ycg.bottommenuslidegradientswipe.MainActivity$MainAdapter.instantiateItem(MainActivity.java:260)
Мой код функции instanstiateItem
приведен ниже. Класс TaskCompletedView
расширяет View
@Override
public Object instantiateItem(ViewGroup container, final int position) {
TasksCompletedView mTasksView = (TasksCompletedView) findViewById(R.id.tasks_view);
container.addView(mTasksView, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
jazzyPager.setObjectForPosition(mTasksView,position);
new Thread(new ProgressRunable()).start();
return mTasksView;
}
Я не знаю, где обновить код. Я использовал строку 'findViewById (R.id.tasks_view);' для инициализации mTaskView. 'MTaskView', класс' TaskCompletedView' расширяет 'View'. –
@PeterZhu Итак, findViewById возвращает null, потому что представление с этим идентификатором не найдено. Пожалуйста, удовлетворитесь правильной инициализацией. – smail2133