[edwith] 안드로이드 앱 개발 초급 (3)

2019. 5. 30. 03:32Engineer/안드로이드 앱 프로그래밍

반응형

간간히 JAVA 공부도 되는 듯하다.


 Lecture 3 


   Chapter 1. 툴바와 플레그먼트 활용 방법


툴바란 원하는 위치에, 원하는 메뉴와 타이틀을 넣을 수 있는 bar라고 생각하면됨  






 



 Fragment는 작은 activity라고 생각하면 편하다. Fragment는 activity안에서 동작하며 단독으로 동작할 수 없다. activity를 Fragment로 구성하게 되면 독립적으로 깔끔하게 프로그램을 작성가능

 




 






   Chapter 2. 스레드 활용 방법


Runnable 인터페이스 구현하여 스레드 생성 방법은 자바의 특징 때문에 생겼다. 클래스는 하나밖에  상속할 수 없다는 것 때문에, 기존의 다른 클래스들은 이미 다른 클래스를 상속해서 만들어져 있으므로 스레드 클래스를 상속할 수가 없다. 그래서 이미 만들어져있는 다른 클래스들은 스레드 클래스로 만들기 위한 방법이 없다. 이 문제를 해결하기 위해 인터페이스를 구현하는 것이다. Runnable 인터페이스를 구현해주고 이 인터페이스를 인자로 넣어주면 스레드처럼 만들수 있게 된다. 





가변인자는 처음보는 것. 



   Chapter 3. 리스트뷰와 파일 활용 방법





ListActivity를 사용해서 리스트뷰를 만드는 방법. 이건 Do.it 책에서 없었던거같은데..

Xml파일에서 listviw를 선언할 때 id 부분이 @android로 시작한다. ListActivity를 사용하기 위해서는 꼭 이렇게 해야함


그리고 Java에 구현해야할 메소드 이름도 바뀜 onListItemClick으로. 

 








ListView의 getView 가 보여줄 item 수만큼 반복 실행되다보니 getView를 튜닝 or 최적화 하는 것이 중요하다. 이에 대해서는 인터넷에 검색해보면 ViewHolder를 사용하는 등등의 몇가지가 있다고한다. 


안드로이드에서 파일 사용관련해서 클래스 정리. 위의 4개는 자바에 있는 파일 관련 클래스이고 아래 3개는 안드로이드에서 제공하는 파일관련 클래스이다. 

안드로이드에서 사용하는 파일들인 기본적으로 파일 인코딩 방식이 UTF-8이다. 그래서 작성하는 파일들이 UTF-8이 아닐 경우 변환해줘야하는 번거로움이 있으므로 UTF-8로 작성하는 것이 좋다. 


inputsteam과 Reader의 차이는 byte단위로 읽어 들이느냐 character 단위로 읽으 들이느냐 이다. 따라서 FileInputStream으로 읽어 들인 것을 BufferedReader로 바로 전달 할 수 없어서 그 중간 다리 역할로 InputSteamReader를 거치도록 한다. 




반응형