public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_my, container, false);
}
}
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
MyFragment fragment = new MyFragment();
transaction.add(R.id.fragment_container, fragment);
transaction.commit();
public interface OnButtonClickListener {
void onButtonClick();
}
public class MyFragment extends Fragment {
private OnButtonClickListener mListener;
// ...
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof OnButtonClickListener) {
mListener = (OnButtonClickListener) context;
} else {
throw new RuntimeException(context.toString()
+ " must implement OnButtonClickListener");
}
}
// ...
private void buttonClick() {
if (mListener != null) {
mListener.onButtonClick();
}
}
}
public class MainActivity extends AppCompatActivity implements MyFragment.OnButtonClickListener {
// ...
@Override
public void onButtonClick() {
}
}