ListFragment Fragment 내에서 ListView를 사용할 경우 보다 편리하데 구성할 수 있도록 제공되는 프래그먼트 ListFragment는 자신이 관리하고 있는 뷰 안에 id 가 @android:id/list 로 설정되어 있는 ListView를 자동으로 찾아서 관리 class SubFragment : ListFragment() { private lateinit var sub_frag_binding: FragmentSubBinding val data1 = arrayOf("항목1","항목2","항목3","항목4","항목5","항목6","항목7") override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedIn..
전체 글
Activity Controller 강사가 소개하는 fragment 관리 방법 웹, 모바일 등 애플리케이션에서 눈에 보이는 화면을 관리하는 요소를 controller 라고 함 (MVC 패턴) 눈에 보이는 모든 부분을 fragment 로 만들어 사용할 경우 , Fragment를 관리하는 Activity가 Controller 역할을 함 -> 어떤 프래그먼트를 보여줄지에 대한 코드를 액티비티에서 작성하는 경우 액티비티를 통해 보여지는 프래그먼트들은 자신을 관리하는 액티비티에 접근이 가능 Activity의 역할 각 Fragment를 교환, 관리 Fragment들이 사용하는 데이터를 관리 [MainActivity.kt] -> 프래그먼트를 관리 class MainActivity : AppCompatActivity(..
Fragment 내 View 제어 onCreateView 메서드에서 생성한 View 객체를 통해 내부의 View 주소값을 엊어옴 이때 findViewById 라는 메서드를 사용 ✔️ 이전에 kotlin-android-extensions 을 사용할 때는 View에 대해 자동으로 변수를 생성해주어 사용할 수 있었는데 해당 방식을 사용할 때는 onCreateView 에서는 view를 반환하기만 하기 때문에 아직 뷰와 주소값이 매핑되질 않아서 버튼 동작 등의 기능 구현을 할 수 없었다. (onViewCreated 에서 해줘야 함) 하지만!! extension 은 이제 deprecated 되었고 ViewBinding 을 기본으로 사용하는데 해당 방법에서는 onCreateView 에서 동작 구현이 바로 가능하다. ..
Fragment 생명주기 각 생명주기에 자동으로 호출되는 메서드가 제공되고 있어 이 메서드를 통해 원하는 시점에 원하는 처리를 할 수 있다 class FirstFragment : Fragment() { // 프래그먼트가 액티비티와 연결될 떄 호출 override fun onAttach(context: Context) { super.onAttach(context) Log.d("test","onAttach") } // 프래그먼트가 생성될 때 호출 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) Log.d("test","onCreate") } // 프래그먼트를 통해 보여줄 view 객체를 생성하기 '위..