Android Studio

프래그먼트(fragment)안에서 버튼 눌렀을 시 해당 프래그먼트 바꾸기

리콜 2022. 12. 5. 01:39

MainActivity에 프래그먼트로 화면을 띄우고 그안의 버튼을 누르면 해당 화면이 다른 프래그먼트로 넘어가도록 동작할려고 한다. 영화 카테고리 리스트에서 액션 카테고리 버튼을 누르면 해당 카테고리에 맞는 영화검색 매개 변수를 넘겨주면서 SeachMovie화면으로 이동 

 fragment2에서 searchMovie로 이동

 

fragment2

public class Fragment02 extends Fragment {
	@Override
    public void onAttach(Context context) {
        super.onAttach(context);
        mainActivity = (MainActivity) getActivity();
    }

    // 메인 액티비티에서 내려온다.
    @Override
    public void onDetach() {
        super.onDetach();
        mainActivity = null;
    }
    View.OnClickListener onClickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            switch (v.getId()) {

                case R.id.btnAction:
                    genre = "&with_genres=" + 28;
                    mainActivity.GenreSearch(url+genre+language);
                    break;

            }
        }
    };
}

 

MainActivity

SearchMovie searchMovie;
public void GenreSearch(String url){
        searchMovie = new SearchMovie();
        getSupportFragmentManager().beginTransaction().replace(R.id.main_frame, searchMovie).commit();

    }

 

따라서 프래그먼트에서 버튼을 누르면 MainActivity에 만들어둔 함수를 이용하여 바꾸어준다. 

반응형