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() { } }


上一篇:
下一篇:
切换中文