상세 컨텐츠

본문 제목

코틀린 프로젝트12

JSP·자바·코틀린

by 김일국 2022. 3. 31. 17:22

본문

이번 포스트는

- 안드로이드 앱:  상품 등록 MVVM 클래스 구성1

신규작업소스(스프링부트API): https://github.com/kimilguk/shop-api

신규작업소스(안드로이드앱): https://github.com/kimilguk/shop-app

## 상품 등록 MVVM 클래스 구성1(아래순서)

- ProductCreateViewModel.kt 추가: 초기 빈 클래스 제작
- ProductCreateActivity.kt 추가: 액션바 코딩만 추가(AndroidManifest에 액션바 테마추가)
- ProductCreateActivityUI.kt 추가: 초기 레이아웃만 구성 후 액티비티.kt에서 디자인 UI와 매칭 추가

상품 메인 화면에서 오른쪽 하단의 등록버튼을 클릭(위)

 

상품 등록 빈 화면이 나타난다.(위)

참고로 인텐트로 액티비티를 불러올 때 헷갈리는 부분2가지 정리(아래)

/**
 * 상품 진입 로직을 실행하는 클래스(스프링부트의 @서비스와 같은 역할)
 * Application 클래스를 매개변수로 사용한 ankomvvm 의 BaseViewModel 을 상속한 클래스
 */
class ProductMainViewModel(app: Application): BaseViewModel(app) {
    fun openCreateActivity() {
        toast("상품 등록 UI가 준비되면 해당액티비티를 열도록 추가")
        startActivity<ProductCreateActivity> {
            flags = Intent.FLAG_ACTIVITY_SINGLE_TOP
            //액티비티를 호출할 때 호출된 액티비티의 인스턴스가
            // 현재 태스크에 이미 실행중인 경우 활동이 재실행되지 않는다
            // ( = 새로운 인스턴스를 생성하지 않는다.)
            /* 참고로
            FLAG_ACTIVITY_CLEAR_TOP: 이미 존재하던 액티비티는 재생성 되며 시작된다.
            */
        }
    }
}

'JSP·자바·코틀린' 카테고리의 다른 글

코틀린 프로젝트14  (0) 2022.04.03
코들린 프로젝트13  (0) 2022.04.02
코틀린 프로젝트11  (0) 2022.03.30
코틀린 프로젝트10  (0) 2022.03.29
코틀린 프로젝트09  (0) 2022.03.28

관련글 더보기

댓글 영역