본문 바로가기

필수 설치 Android SDK Manager 처음 안드로이드를 깔거나 새롭게 Packages Tools를 추가해야 할 때 다 깔기엔 왠지 손해보는 느낌이 들고... 안 깔자니 찝찝 할 때! 필수적으로 깔아야 하는 것만 적어보겠습니다. 나머지 녀석들은 자신이 만드는 환경에 따라 TV 쪽이라면 TV에 관련된 것 설치, 웨어러블이라면 괸련된 것 설치...아무튼 밑줄 그은 것들은 필히 설치! 하시길.. 그리고 웬만하면 Extras는 다 설치 하시길... 더보기
프래그먼트(Fragment) 쉽게 만들기 Fragment 가 조각이라는 뜻을 꼭 기억해야 합니다. 위의 그림같이 일일이 인텐트로 액티비티 마다 옮겨간다면 관리가 쉽지 않습니다. 액티비티 생명주기 다 거치고 UI 개별 요소 관리, 각 부분의 상태변화까지 모조리 확인 하며 프로그래밍 한다는 것은 상당히 피곤한 일입니다. 물론 초보일 때는 Intent로 넘겨주는 것만 해도 끝나지만.. 아무튼 이러한 것을 Fragment를 사용하면 Fragment Manager가 알아서 해줍니다. 그래서 Fragment를 사용합니다. 읽으시는 분중에 '나는 생명주기도 모르겠고, Fragment Manager도 모르겠고.. 그냥 계속 인텐트로 액티비티를 많이 쓰면 앱이 느려지고 리소스 많이 잡아먹을까봐 Fragment 쓰려고 한다' 라고 생각하시는 분들도 있을 겁니다... 더보기
리니어 레이아웃(LinearLayout) 리니어 레이아웃은 쉽게 얘기해서 순서대로 위젯(버튼)을 정렬 한다. xml에 보이는 android:orientation="vertical or horizontal "의 속성에 따라, 세로로 정렬 할지 또는 가로로 정렬 할지가 결정 된다. 아래 그림은 세로로 세개의 버튼을 정렬 한 모습이다. 빨간색 박스는 온전히 첫번째 버튼의 영역이고,초록색 박스는 온전히 두번째 버튼의 영역이다. 따라서 아무리 두번째 버튼을 첫번째 버튼 옆에붙이려 해도 절대 붙지 않는다. 이것이 리니어 레이아웃의 특징이다. orientation에 따라서 공간이 나뉘는 것이 가장 큰 특징 중 하나이다. 아래 그림은 android:orientation="horizontal" 로 설정 한 그림이다. 분홍색 박스는 온전히 첫번째 영역이다.따라서.. 더보기
용어 정리 그리고 테그 안에 들어 있는 xmlns: , android:layout_width 등 여러가지 문자가 있는데 이를 속성 이라 한다. 더보기
안드로이드 스튜디오에서 import 자동으로 하기 아래와 같이 안드로이드 스튜디오에서 함수를 사용하다보면 빨간 물결 줄이 보일 때가 있다. 이런 경우는 import되어 있지 않는 함수를 사용한 경우인데 이때는 아래와 같이 import를 내가 직접 추가해 줘야 한다. 일일이 자동으로 import를 하면 귀찮다. 안드로이드 스튜디오에서 자동으로 import해주는 방법을 알아보자. 1. 메뉴 탭에서 File -> Settings를 클릭한다. Settings -> Editor -> Auto Import에서 Optimize imports on the fly를 체크한다. 그리고 Apply 를 눌러 적용시킨 후에 ok 버튼을 누르면 된다. 사실 편의를 위해서는 Show import popup과 Add unambiuous imports on the fly 도 체크 하.. 더보기
레이아웃 관련 아래 그림은 위 그림과 똑같은 내용인데, 실제 안드로이드 스튜디오의 화면을 가져다 만든 것. padding은 텍스트(아래 그림에선 ok)와의 여유공간. layout_margin은 버튼(위젯이라고도고 함)과 전체 화면과의 여유공간 layout:weight 와 layout:height 의 선택 속성중에 wrap_content 라는게 있다. wrap_content 는 안에 있는 내용물(content)에 따라 크기가 변하게 설정 하는 기능이다. 예를들어 아래 그림을 보자. 같은 버튼을 만들고, 버튼 안의 내용물의 길이만 다르게 했다. 둘다 설정은 wrap_content 다. 그런데 길이가 달라진 것이 육안으로도 확인 가능하다. 이렇듯 wrap_content는 내용물에 따라 크기나 길이가 변하는 설정 임을 알 수.. 더보기
풀스크린 1234protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //풀스크린 사용법. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 더보기