0

Я работаю над созданием собственного пользовательского класса ImageView на Android. Я прочитал документацию по макетам, фрагментам, действиям и ImageView.java.lang.NullPointerException: Параметры макета не могут быть нулевыми

Я смотрел сообщения Stack о том, как создать ImageView программно, но я столкнулся с проблемой. Я не могу найти решение (чтение верхних ударов для поиска указанной выше ошибки не относится к моей выпуск).

У меня есть активность, и внутри этой деятельности у меня есть фрагмент. Внутри фрагмента я создаю ImageView (его называемый iImage, но его просто расширенный класс ImageView).

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) 
    { 
     // Inflate the layout for this fragment 
     iImage image = new iImage(getActivity()); 
     image.setImageResource(R.drawable.name_splash); 
     LinearLayout.LayoutParams par = new LinearLayout.LayoutParams(1500,1100); 
     image.setLayoutParams(par); 
     container.addView(image); 
     View rootView = inflater.inflate(R.layout.fragment_edit_photo, container, false); 
     return rootView; 
    } 

Однако, когда я запустить приложение, он загружает, и она работает просто отлично, но я получаю эту ошибку:

java.lang.RuntimeException: Unable to start activity ComponentInfo{co.name.app/co.name.app.CameraEditorActivity}: java.lang.NullPointerException: Layout parameters cannot be null 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 

....

Caused by: java.lang.NullPointerException: Layout parameters cannot be null 
     at android.view.View.setLayoutParams(View.java:11470) 
     at co.name.app.EditPhotoFragment.onCreateView(EditPhotoFragment.java:89) 

Вы можете сообщить, какова основная проблема?

+0

Произошла такая же ошибка – Aggressor

+0

После очистки и перезапуска проекта его работа. Радость .... – Aggressor

ответ

1

Я не могу воспроизвести вашу ошибку, ваш код работает в моем тестовом примере.

Параметры параметров макета, безусловно, относятся к image? Убедитесь, что все компоненты в R.layout.fragment_edit_photo имеют данные макета.

Если это так, основная проблема может заключаться в том, что макет родительского контейнера фрагмента может быть не LinearLayout. Также проверьте, обновлен ли ваш SDK.

+0

Я очистил проект и перезапустил студию Android, и теперь это работает ... странно ... – Aggressor