open coding

open coding - fragment 기본 코딩

◀ ▷ ▶ ♤ ♠ ♡ ♥ ♧ ♣ ⊙e 2020. 11. 16. 20:44
반응형

package com.example.fragment;

import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;

import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    //fragement 객체 생성
    FirstFragement first = new FirstFragement();
    SecondFragment second = new SecondFragment();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }//finish


//버튼 클릭시 firstFragment 추출
    public void btnMethod(View view){
        //fragment 관리 객체추출
        FragmentManager manager = getSupportFragmentManager();
        //fragment 변경 관리하는 객체추출
        FragmentTransaction tran = manager.beginTransaction();

        //fragment add
     //   tran.add(R.id.frameLayout_mainActivity,first);  //어디에 어느 fragment 실행할건지
       //fragment 교체(add 대신)- add는 버튼 또누르면 오류발생
        tran.replace(R.id.frameLayout_mainActivity,first);  //replace는 이전거 제거 후 실행이니 버튼 또 눌러도 오류없음.

        //fragment 변경사항을 back stack에 저장
        tran.addToBackStack(null);              //뒤로가기 기능(뒤로가기 누르면 이전 fragment 보여준다.-앱 종료가 아닌)
        //적용
        tran.commit();
    }//finish

//버튼 클릭시 secondFragment 추출
    public void btn2Method(View view){
        FragmentManager manager = getSupportFragmentManager();
        FragmentTransaction tran = manager.beginTransaction();

        //fragment add
            //tran.add(R.id.frameLayout_mainActivity,second);  //어디에 어느 fragment 실행할건지
        //fragment 교체(add 대신)- add는 버튼 또누르면 오류발생
        tran.replace(R.id.frameLayout_mainActivity,second);  //replace는 이전거 제거 후 실행이니 버튼 또 눌러도 오류없음.

        //fragment 변경사항을 back stack에 저장
        tran.addToBackStack(null);              //뒤로가기 기능(뒤로가기 누르면 이전 fragment 보여준다.-앱 종료가 아닌)

        tran.commit();
    }

}