Я хочу передать определенные значения из активности в фрагмент в android. Вот код: -Передача значений из активности в фрагмент андроида
MainActivity: -
PlaceDialogFragment dialogFragment = new PlaceDialogFragment(place,dm);
Фрагмент: -
public PlaceDialogFragment(Place place, DisplayMetrics dm){
super();
this.mPlace = place;
this.mMetrics = dm;
}
Используя конструктор во фрагменте дает мне ошибку: -
Avoid non-default constructors in fragments: use a default constructor plus Fragment#setArguments(Bundle) instead
Если я заменил конструктор на: -
public static final DialogFragment newInstance(Place place, DisplayMetrics dm)
{
DialogFragment fragment = new DialogFragment();
Bundle bundle = new Bundle(2);
bundle.putParcelable("Place", place);
bundle.putFloat("Metrics", dm.density);
fragment.setArguments(bundle);
return fragment ;
}
Я получаю сообщение об ошибке в MainActivity.Java: -
The constructor PlaceDialogFragment(Place, DisplayMetrics) is undefined
Как я решить эту проблему?
фрагменты не должны иметь ARG конструктор. alex ответил на ваш вопрос. посмотрите @ http://developer.android.com/reference/android/app/DialogFragment.html – Raghunandan