목록개발/안드로이드 (4)
게으른 개발자
객체를 복사할 때 얕은 복사(shallow copy)와 깊은 복사(deep copy)가 있다는 것을 알고 계신가요? 개발을 하다 보면 리스트나 객체를 복사해서 사용해야 하는 경우가 생기는데 이때 우리가 늘 사용하는 대입 연산자(=)를 사용하면 얕은 복사가 되어 값을 변경하면 원본 객체와 복사본 객체의 값이 모두 변경됩니다. kotlin에서는 clone(), copy()를 사용하여 깊은 복사를 할 수 있습니다. 얕은 복사와 깊은 복사 개념 1) 얕은 복사 class Student(id : Int, name : String, score : MutableList) : Cloneable{ var id : Int var name : String var score : MutableList init{ this.id ..
안녕하세요:) 이번 글에서는 안드로이드 프로젝트를 생성했는데, 생성하자 마자 모든 폴더가 빨간색으로 뜰 때 해결방법을 알려드리려고 해요! 바탕화면이나 다른 폴더에 프로젝트를 생성하면 문제가 없는데, git이 연동되어있는 폴더에 프로젝트를 생성하면 모든 파일이 빨간색으로 뜨는데, 디버깅을 해봐도 오류는 안 뜨고 정말 막막했습니다.... 결론부터 말하자면, 버전 관리 때문입니다ㅠㅠ git을 생성한 폴더에 프로젝트를 생성하면 안드로이드 스튜디오에서도 버전 컨트롤러를 자동으로 생성해버려서 충돌이 생기는 게 아닌가 합니다... 해결방법 1. Intelij(또는 AndroidStudio)에서 preferences클릭 2. 왼쪽 아래 VersionControl 클릭 3. Directory에 떠있는 리스트를 클릭해서 ..
저번 글에서 안드로이드의 4가지 컴포넌트에 대해 간단하게 소개했다. 이번 글에서는 4가지 컴포넌트 중에서 가장 많이 사용하는 액티비티(Activity) 컴포넌트와, 생명주기에 대해 알아보자. 액티비티 안드로이드에서 액티비티 컴포넌트는 이름과 같이 사용자가 어떠한 활동 할 때 실행되는 컴포넌트이다. UI를 제공하여 사용자와 상호작용을 하며, class에서 activity를 상속받아 사용할 수 있다. 보통 앱은 여러 화면으로 구성되어 있어 여러 액티비티로 구성되어있다고 할 수 있다. 예를 들어 앱을 시작할 때 나오는 로그인 화면, 로그인을 했을 때 이동하는 메인화면 등 모두 각각의 액티비티들이다. 액티비티를 생성하면 .kotlin(또는 .java) 클래스 파일과 .xml파일이 함께 생성된다. .xml파일은 ..
안드로이드는 액티비티(Activity), 서비스(Service), 브로드캐스트 리시버(Broadcast Reciver), 콘텐츠 제공자(Content Provider)로 구성되어 있다. 이런 구성 요소들은 서비스나 유저가 앱을 사용할 수 있는 '진입점'이다. 즉, 유저나 시스템이 앱에 접근하기 위해서는 4가지 구성 요소를 사용해야 한다는 의미이다. 안드로이드의 4가지 구성 요소들은 각각 다른 목적과 라이프사이클을 가지고 있으며 이번 글에서는 안드로이드의 4가지 구성 요소에 대해 간단하게 소개한다. 액티비티(Activity) 액티비티는 사용자와 상호작용을 하기 위한 진입점이다. 액티비티는 유저 인터페이스(UI)를 포함한 하나의 화면을 가지고 있으며, 사용자와 시스템의 상호작용을 도와준다. 예를 들어 이메일..