목록분류 전체보기 (163)
불로구
Activity -> Fragment 액티비티에서 프래그먼트로 데이터를 전송하기 위해선 Bundle이란 클래스를 사용한다. Bundle이란? -> 여러가지 타입의 값을 저장하는 Map 클래스 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val fragmentOne : FragmentOne = FragmentOne() val bundle : Bundle = Bundle() bundle.putString("hello","hello") fragmentOne.arguments = bundle } -> 프래그먼트의 arguments를..
fragment_button.setOnClickListener { val fragmentManager : FragmentManager = supportFragmentManager val fragmentTransaction = fragmentManager.beginTransaction() fragmentTransaction.replace(R.id.container , fragmentOne) fragmentTransaction.commit() } fragment_button2.setOnClickListener { val fragmentManager = supportFragmentManager val fragmentTransaction = fragmentManager.beginTransaction() frag..
쓰레드란? - 프로세스 내에서 실제로 작업을 수행하는 주체 - 모든 프로세스는 하나 이상의 쓰레드를 가지고 있다. - 두개 이상의 스레드를 멀티 쓰레드라고 한다. - 안드로이드에는 MainThread와 다른 Thread가 있다. - MainThread는 한번에 하나만 가능하며, 앱이 끝날때까지 정지 불가 -> 정지 시 crash 발생 - 다른 Thread는 한번에 여러가지 일을 할 수 있다. runOnUiThread 란 - 현재 쓰레드가 UI 쓰레드라면 UI 자원을 사용하는 행동에 대해 즉시 실행 - 현재 쓰레드가 UI 쓰레드가 아니라면 UI 쓰레드의 자원 사용 이벤트 큐에 들어감 쓰레드 사용법 버튼을 눌렸을 때 스레드 시작 val runnable: Runnable = object : Runnable {..
MVP란? - MVC 패턴과는 다르게 View와 Model의 의존성을 제거한 패턴 - Presenter는 View와 Model 사이에 중재자 역할을 한다. - 즉, View와 Model은 서로 알지 못하고 Presenter를 통해 서로 상호작용을 한다. - Presenter는 View의 내용을 직접 참조하지 않고 잔접적으로 명령을 내린다. - UI 종속적인 코드가 제거되었기에 테스트에 유리하다. 유형 및 동작 Model : 애플리케이션 데이터와 상태에 대한 비즈니스 로직 수행 View : 실제 View에 대한 직접적인 접근 담당 Presenter : View와 Model 사이 데이터 전달 1. 사용자의 Action을 View를 통해 받는다. 2. View는 데이터를 Presenter에 요청 3. Pres..