Presentation is loading. Please wait.

Presentation is loading. Please wait.

아주대학교 LifecareScienceLAB Android Seminar 2 nd class Android Software Development 2011/04/13 – p.m. 06:00 – 팔달관 409 호 아주대학교.

Similar presentations


Presentation on theme: "아주대학교 LifecareScienceLAB Android Seminar 2 nd class Android Software Development 2011/04/13 – p.m. 06:00 – 팔달관 409 호 아주대학교."— Presentation transcript:

1 아주대학교 LifecareScienceLAB Android Seminar 2 nd class Android Software Development 2011/04/13 – p.m. 06:00 – 팔달관 409 호 아주대학교

2 Review  My First Android Application  Hello World  프로젝트 생성 방법 학습  Simulator 실행

3 My First Android Application

4

5

6

7

8

9 Contents List Android User Interface Widget TextView, Button, EditText Layout Software Development Software Design

10 아주대학교 ANDROID User Interface Widget TextView, Button, EditText Layout

11 User Interface  User Interface of Android Java  View & ViewGroup  View Hierarchy ViewGroup View

12 View Object 안드로이드 플랫폼 상의 사용자 인터페 이스를 표현하는 기본단위 SubClass : Widget Button, TextField, etc… ViewGroup Object 안드로이드 플랫폼 상의 View 와 ViewGroup 의 묶음 단위 SubClass : Layout Linear, Relative, Tabular, etc… User Interface

13  View & ViewGroup LinearLayout Button LinearLayout Button

14 User Interface  Activity  안드로이드에서의 과제 / 작업의 단위  Widget 과 Layout 을 제어한다.  android.app.Activity Class  응용프로그램의 각 화면마다 Activity 를 정의하고 구현하는 데 많은 시간을 들이게 된다.  Example  시동 / 스플래시 화면  주 메뉴 화면  게임 플레이 화면  고득점 화면  도음말 / 프로그램 정보 화면 시동 / 스플래시 Activity 주 메뉴 Activity 도움말 / 프로그램 정보 Activity 게임플레이 Activity 고득점 Activity

15 User Interface Layout Hierarchy Activity Hierarchy Control

16 Widget  android.widget 패키지  TextView  화면에 문자를 출력  Button  사용자의 선택 입력  EditText  문자 입력 View Object 안드로이드 플랫폼 상의 사용자 인터페 이스를 표현하는 기본단위 Button, TextField, etc…

17 Widget  Widget 사용하기 1  xml 파일에서 정의 후 Activity 에서 ID 를 찾는다. 1. [project]->[res]->[layout]->[main.xml] 에 TextView 추가 2. Activity 에서 TextView 선언 3. Activity 에서 findViewById 메서드로 할당  레이아웃 (xml) 과 소스코드 (activity) 를 연결

18

19

20

21 Widget  Widget 사용하기 2  Activity 에서 생성 후 Layout 에 표시한다. 1. Activity 에서 TextView 생성  new 메서드 사용 2. TextView 객체를 ContentView 로 생성  setContentView 메서드 사용

22

23 Widget  Listener (implementation in Activity)  객체에서 Event 가 발생하였을 때 이를 감지하고 수용하여 실행되는 함수  Ex.) Touch, KeyPress, SensorDataReceive, …  Properties (setup in xml file)  Widget 의 속성  Ex.) Size, Padding, ImageResource, …

24 Widget  TextView, Button, EditText 를 이용 하여 버튼을 누르 면 편집한 문자열 이 출력되는 예제 main.xml →

25 Widget ↓ Activity Class

26 Widget  Properties

27 Widget  Properties <TextView android:id="@+id/textView1" android:textSize="40dp" android:layout_height="wrap_content" android:layout_width="fill_parent" android:gravity="center" android:layout_weight="1" android:text="Massage" > <EditText android:id="@+id/editText1" android:textSize="20dp" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Enter Text" android:layout_weight="1" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/linearLayout1" android:orientation="horizontal" android:layout_weight="0" > <Button android:layout_width="wrap_content" android:layout_gravity="center" android:textSize="20dp" android:id="@+id/button1" android:layout_height="wrap_content" android:layout_weight="0" android:text="Refresh" >

28 Layout 웹 디자이너들이 HTML 을 사용하는 것과 비슷하게, 안드로이드 응용프로 그램의 사용자 인터페이스 디자이너는 XML 을 이용한다.  종류  Linear Layout  View 들을 차곡차곡 쌓는 배치 ( 가장 많이 사용 )  Relative Layout  부모와 자식, 자식과 자식간의 상대적인 배치  Frame Layout  좌상단에 겹쳐서 쌓는 배치  Table Layout  표형태로 배치

29 아주대학교 SOFTWARE DEVELOPMENT Software Design

30 Design Tool  State Diagram  프로그램의 상태를 정의한 상태간의 흐름도  Structure Chart  기능 중심의 함수 구조도  Flow Chart  데이터 흐름 중심의 함수 흐름도  UML :: Class Diagram  객체 중심의 클래스 구조도  UML :: Sequence Diagram  순차 중심의 객체와 함수의 흐름도

31 State Diagram Not Playing, At the beginning PlayingPaused Play Pause Stop Pause Stop

32 Structure Chart main process Input ouput sub process 2 sub process 1 sub process 3 print

33 Flow Chart i <= 0 Turn on All LED Output Data in Array[i] to LED i++ False True Add Random Value to Array Array Size + 1 START i <= 0 i < Array Size? Turn on All LED Input Data from Button False True Array[i] == Input? True i++ Clear Array Array Size <= 0 Clear Array Array Size <= 0 False i <= 0 i < Array Size?

34 Class Diagram Class Explain Builder 문서를 구성하기 위한 메소드를 결정하는 추상 클래스 Director 한 개의 문서를 만드는 클래스 TextBuilder 일반 텍스트 ( 보통의 문자열 ) 를 이용해서 문서를 만드는 클래스 HTMLBuilder HTML 파일을 이용해서 문서를 만드는 클래스 Main 동작 테스트용 클래스 Builder makeTitle makeString makeItems close TextBuilder buffer makeTitle makeString makeItems close getResult makeTitle makeString makeItems close getResult HTMLBuilder Director builder construct filename writer Uses ▲ Main Uses ▶ Uses ▲

35 Sequence Diagram :Client:Server:Device work open print close write


Download ppt "아주대학교 LifecareScienceLAB Android Seminar 2 nd class Android Software Development 2011/04/13 – p.m. 06:00 – 팔달관 409 호 아주대학교."

Similar presentations


Ads by Google