Используйте следующий код:
Bundle bundle = new Bundle();
bundle.putString("edttext", "From Activity");
// set Fragmentclass Arguments
Fragmentclass fragobj = new Fragmentclass();
fragobj.setArguments(bundle);
и в методе Fragment onCreateView:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
String strtext = getArguments().getString("edttext");
return inflater.inflate(R.layout.fragment, container, false);
}
Другой способ Вы можете передавать данные, используя интерфейс, как показано ниже:1 шаг: я создал открытый интерфейс в своей деятельности и установщик для него:
Private OnAboutDataReceivedListener mAboutDataListener;
public interface OnAboutDataReceivedListener {
void onDataReceived(YourModelClass model);
}
public void setAboutDataListener(OnAboutDataReceivedListener listener) {
this.mAboutDataListener = listener;
}
2 шаг: я реализовал этот интерфейс в своем фрагменте и установил прослушиватель:
public class YourActivity extends BaseFragment implements YourBaseActivity.OnAboutDataReceivedListener
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mActivity = (YourActivity) getActivity();
mActivity.setAboutDataListener(this);
}
3 шаг:Я переопределил метод интерфейса:
@Override
public void onDataReceived(YourClassModel model) {
}