본문 바로가기

05-2. 어댑터 뷰 ※ 커스텀 뷰 - ListView를 구성하는 뷰를 개발자가 직접 만들어 사용한다. ※ 커스텀뷰 구현 소스 activity_main.xml (어댑터 뷰가 리스트를 보여줄 화면) custom_layout.xml (커스텀할 리스트 뷰의 한줄 양식) MainActivity.java public class MainActivity extends Activity { private ArrayList data = null; private CustomAdapter costomAdapter =null; private ListView lv = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState).. 더보기
05-1. 어댑터 뷰 ※ 어댑터 & 어댑터 뷰? - 어떤 데이터를 이용하여 리스트를 보여줄 때 안드로이드 에서는 어댑터 뷰를 이용해서 보여준다. 어댑터 뷰는 데이터와 어댑터를 연결해주는 역할을 한다. 사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 ※ ListView 구현(자바에서 데이터 넣기) public class MainActivity extends Activity { ArrayList arrayList =null; ArrayAdapter adapter = null; ListView lv = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.. 더보기
04. 커스텀 뷰 ※ 커스텀 뷰? 레이아웃 뷰 그룹을 이용하지 않고 View클래스를 상속 받아 직접 뷰를 만들어 사용하는 것 사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 커스텀뷰 예제 소스 public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); //커스텀뷰를 객체로 만들어 setContentView에 넣어준다 CustomView cv = new CustomView(MainActivity.this); setConten.. 더보기
03-2. 레이아웃 ※ RelativeLayout 위젯들 사이의 관계를 이용한 레이아웃 배치 사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 android:layout_below="@id/tv_center" - id 값의 요소보다 아래배치 하겠다. android:layout_alignParentRight="true" - 부모의 오른쪽 부분으로 붙이겠다. android:layout_alignBaseline="@+id/tv_center" - id 값의 요소와 베이스라인을 맞추겠다. ※ FrameLayout 뷰를 쌓아 올리는 방식사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 ※ TableLayout 표형식의 레이아웃사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 ※ Calculator.. 더보기
03-1. 레이아웃 ※ 화면구성 요소 응용프로그램 - app프로그램 액티비티 - 한개의 화면 화면 뷰 - 액티비티안을 구성하는 하나의 요소 사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 ※ 뷰에 대한 이해 뷰(View) - 뷰 그릅과 위젯을 포함한 최상위 그룹의 개념 뷰 그룹 - 뷰들을 하나하나 담고있는것(레이아웃) 위젯 - 화면의 요소 사진출처 : 서울위즈 앱 창업자를 위한 안드로이드 실무 동영상 ※ MainActivity 분석 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } 소스코드 맨위를 보면 위와같은 부분이 있다. 밑.. 더보기
02. 안드로이드 프로젝트 ※ 에뮬레이터(AVD) 만들기 perspective -> 자바 선택 -> Window -> Android Virtual Divice Manager 클릭 -> 원하는 디바이스 생성 ※ 새 프로젝트 만들기 마우스 오른쪽 클릭 -> new -> Android Application Project Application Name : 어플리케이션 이름 (대문자로 시작) project Name : 패키지 이름 (소문자로 시작) package Name : com.조직명.도메인주소 Minimum Required SDK : 내가만들 어플리케이션의 최소한의 SDK 버전 Target SDK : 응용프로그램이 돌아갈 최적화 버전 선택 Complie With : 컴파일할 버전 Tehme : 스킨테마 ※ 전체적인 구성 살펴보기 사진.. 더보기
01. 안드로이드 개요 및 개발 환경 구축 ※ 안드로이드란? 모바일 OS의 한 종류 ※ 안드로이드 시스템의 종류 모바일웹 : 모바일환경에 최적화된 웹사이트 (마켓에서 다운받는것이 아니라 URL로 접속) 네이티브 - 우리가 일반적으로 생각하는 앱 (마켓에서 다운받는것) 하이브리드 - 모바일웹 + 네이티브 (모바일 웹으로 만들어서 네이티브앱으로 감싸준후 마켓에 올린다) 프로젝트를 진행하기 위해서는 구글이 제공하는 ADT와 안드로이드 SDK가 있어야한다. SDK - 안드로이드를 개발하기 위한 라이브러리들 ADT - SDK와 이클립스를 연결해주는 툴 ※ 안드로이드 ADT 설치 eclipse 실행 -> help메뉴 클릭 -> Install New Software 클릭 -> add클릭 -> Name / Location 입력 (androide ADT / ht.. 더보기
안드로이드 공부 시작! 이 게시판은 개인적으로 안드로이드를 공부하고 정리한 내용을 작성한 것입니다. 서울위즈의 앱 창업자를 위한 안드로이드 실무 동영상을 보고 공부하였습니다.잘못된 내용의 지적은 매우 감사드립니다. 더보기
06-4 신장 트리와 최소 비용 신장 트리 ※ 신장트리(Spanning Tree) - 무방향 그래프 G에서 n개의 모든 정점과 n-1개의 간선으로 만들어진 트리 - 연결 그래프에서 순회를 하면 n-1개의 간선을 이동하면서 모든 정점을 방문하게 되므로 신장 트리를 생성하게 된다. 너비 우선 탐색을 이용하여 생성된 신장 트리를 너비 우선 신장트리, 깊이 우선 탐색을 이용해 생성된 깊이 우선 신장 트리라고 한다. - 신장 트리는 최소의 간선을 이용하여 모든 정점을 연결한 그래프가 된다. 이러한 신장트리는 최소의 도로를 이용한 도로망 건설이나 최소의 네트워크선을 이용하여야 하는 통신망 설계 등에 응용된다. ※ Kruskal 알고리즘1 - 가중치가 높은 간선을 내림차순으로 정렬하여 연결이 끊기지 않도록 하면서 가중치가 가장 높은 간선을 하나씩 삭제해 나간.. 더보기
06-3 그래프의 순회 ※ 순회 종류 깊이 우선 탐색 너비 우선 탐색 ※ 깊이 우선 탐색(DFS, Depth Frist Search) - 한 방향으로 갈 수 있을 가장 먼 경로까지 깊이 탐색해가다가 더 이상 갈 곳이 없으면 가장 마지막에 만났던 갈림길 간선이 있는 정점으로 되돌아와 다른 방향의 간선을 탐색을 계속 하므로써 모든 정점을 방문 순회하는 법. - 가장 마지막에 만났던 갈림길 간선의 정점으로 가장 먼저 되돌아가 다시 깊이 우선 탐색을 반복해야 하므로 후입 선출 구조의 스택을 사용한다. ※ 너비 우선 탐색(BFS, Breadth First Search) - 시작 정점으로 부터 인접한 정점을 모두 방문한 후 방문했던 정점을 다시 시작점으로 하여 인접한 정점들을 차례대로 방문하는 방법 - 인접한 정점들에 대해 차례로 다시 .. 더보기
06-2 그래프의 구현 ※ 그래프의 구현 - 그래프를 구현하기 위해서는 정점에 대한 집합과 정점에 부속된 간선의 집합을 표현해야 한다. 순차 자료구조 방식을 이용하는 2차원 배열의 인접행렬 방법과 연결 자료구조 방식인 연결 리스트를 사용하는 인접 리스트 방법이 있다. 만들고자 하는 그래프의 특성과 필요한 연산에 따라 적당한 표현 방법을 만들자. ※ 순차 자료구조 방식을 이용한 그래프의 구현 : 인접 행렬 - 두 정점이 인접하면 1 인접하지 않으면 0으로 표현 - n개의 정점을 가지는 그래프를 n * n 의 인접 행렬로 표현하면 간선의 개수에 상관없이 n*n의 메모리를 사용하기 때문에 간선이 적은 경우엔 메모리 낭비가 일어날 수 있다. ※ 연결 자료구조 방식을 이용한 그래프의 구현 : 인접 리스트 - 각 노드의 정점을 저장하는 .. 더보기
06-1 그래프의 구조 ※ 그래프란? - 연결되어있는 원소간의 관계를 표현하는 자료구조. - 그래프는 연결할 객체를 나타내는 정점(vector)과 객체를 연결하는 간선(edge)의 집합으로 구성된다. 그래프는 G = (V,E)로 정의하는데 V는 그래프에 있는 정점들의집합, E는 정점을 연결하는 간선들의 집합을 의미한다. ※ 그래프의 종류 무방향 그래프 (방향이 없는 그래프, 간선을 (A,B) 로 표현 ) 방향 그래프 (방향을 가진 그래프, 간선을 로 표현) 완전 그래프 (한 정점에서 모든 정점과 연결 되어 있는 구조, 간선의 수는 방향 그래프 n(n-1) 무방향 그래프 n(n-1)/2 개를 갖는다.) 부분 그래프 (원래의 그래프에서 일부의 정점이나 간선을 제외하여 만든 그래프) 가중 그래프 (정점을 연결하는 간선에 가중치를 할.. 더보기