2016-09-15 2 views
0

Есть две части. Одна кнопка. На другом ImageView. Как сделать так, чтобы нажатием кнопок на первом фрагменте загрузилось определенное изображение в ImageView, которое во втором фрагменте.Изменить изображение Посмотреть изображение в другом фрагменте. Android

Фрагмент 2:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view = inflater.inflate(R.layout.fragment_barcode_page1, container, false); 
     logoIMG = (ImageView) view.findViewById(R.id.logoIMG); 
     ButterKnife.bind(this, view); 
     return view; 
    } 

Но при нажатии приложения изменение изображения кнопки закрывает

+0

не могли бы вы поделиться другим кодом? например код, который выполняется после нажатия кнопки, будет очень полезен – Katharina

+1

Если вы хотите изменить в другом фрагменте, используйте 'getActivity(). findViewById();' вместо 'getView(). findViewById();' –

+0

Этот обработчик на button [code] BarCodePage1Fragment barCodePage1Fragment = (BarCodePage1Fragment) getFragmentManager(). findFragmentById (R.id.logoIMG); barCodePage1Fragment.logoIMG.setImageResource (R.drawable.triskovorodki_big); [/ code] – user1667616

ответ

0

Вы можете использовать статическую переменную для этого.

Пример: - ImageFragment

//global public and static ImageView 
public static ImageView imageView; 
..... 

//Initialize the imageview somewhere 
public setupView(){ 
    imageView = getView().findViewById(R.id.myImageView); 
} 

ButtonFragment

Внутри OnClick кнопки сделать что-то вроде этого.

ImageFragment.imageView.setImageDrawable(//your drawable//); 

Примечание: ImageView в ImageFragment муз инициализироваться, означает фрагмент должен быть всегда инициализируется перед использованием в другом классе.

+0

Не работает. Обработчик на кнопке ImageFragment.imageView.setImageDrawable (getResources(). GetDrawable (R.drawable.logo_big)); – user1667616

Смежные вопросы