브로드 캐스트 수신자는 애플리케이션 구성요소 이다.화면이 없는 서비스브로드 캐스팅되는 메시지를 받는것이 브로드 캐스트 수신자 라고 한다.과연 브로드 캐스트는 뭘 하는것일까?1234561. 애플리 케이션이 글로벌 이벤트를 받아서 처리하려면 브로드 케스트 수신자로 등록2. 글로벌 이벤트란? "전화가 왔습니다", "문자 메시지가 도착했습니다" 와 같이 안드로이드 시스템 전체에 보내지는 이벤트3. 브로드 캐스트 수신자는 인텐트 필터를 포함하며, 매니페스트 파일에 등록함으로써 인텐트를 받을 준비를 함.4. 수신자가 매니페스트 파일에 등록되었다면 따로 동작하지 않는다.5. 서비스 처럼 브로드 캐스트 수신자도 UI가 없다.6. 브로드 캐스트란? 여러 사람들에게 한꺼번에 데이터를 뿌려주는것이다.cs인텐트와 브로드 캐스..
서비스화면이 없는것을 얘기 하는것이다.화면이 어떻게 보일까? xml화면 동작기능 ? java source12345671. 화면이 없더라도 뭔가 기능이 실행될 수 있게 하는것이 서비스 이다.2. 서비스는 어플리케이션 구성요소이다.3. 시스템이 관리한다.4. 서비스는 뒤에서 계속 실행되어야하는 기능이 있어야한다.5. 서비스가 메모리에 CPU가 작아서 시스템이 자동으로 종료시켰다고 하더라도, 서비스가 계속감시를 하다가 자동으로 재시작해준다.6. 수명주기 onCreate,onDestory 메소드7. 서비스는 StartService()로 시작하게 된다.Colored by Color Scriptercs서비스를 만들고 싶을때는?App-> 오른쪽 마우스 ->new -> service -> Service를 만들수 있다...
이제 까지 우리는 액티비티 생명주기를 알아 보았다. 이제 코드를 통해서 더욱더 심화된 예제를 살펴 볼것이다onPause()와 onResume()이 가장 중요하다중지시점, 복구시점 이므로 가장 중요하다필요한 데이터를 저장할 수 있어야한다.파일에 저장하거나, 데이터베이스에 저장해야되는데 너무 복잡한 과정을 거치게 되므로이럴때, getSharedPreferences()를 사용한다. getSharedPreferences() 간단하게 설정정보를 저장하는 메소드 이다또는,PreferenceManager를 통해서도 접근 가능하다.getSharedPreferences()를 사용해보자1. 저장할때와 복구할때 동일한 이름으로 사용해야 한다.2. 속성을 보면 Activity.MODE_PRIVATE를 쓰면 된다. 보통 이걸 ..
액티비티의 수명주기란?(생명주기)life cycle이란? 사람이 살아가면서 태어날 때까지의 과정앱이라는게 한개만 실행되어있는게 아니라 이전에 실행되어있는 액티비티도 있고, 추후에 실행하면 스택에 계속쌓이기 때문에 중지되거나, Paused 상태가 되거나, 중지(Stopped)상태로 구분이 된다. 각각의 상태가 중요한 역할을 하는데, 고스톱 게임중에 전화가 오면, 전화가 오는화면이 고스톱을 가리게 되는데 게임이 갑자기 스택으로 들어가버리게 되고 실행상태가 종료가 되어버린다. 그리고 CPU가 부족하면 중지되어있는 화면을 중지로 꺼버리게 되어버린다. 이러한 경우에 개발자가 게임을 개발할때, 게임이 스탑되는 상태를 알려준다. 이때, 콜백함수로 알려주게 된다. 그때, 전화가 종료되고나면 다시 스택에 쌓여있던 액티비..
인텐트로 전달사용 예제1234567891. Exapmle_Parcelable 프로젝트 생성 2. App -> new -> Activity -> MenuActivity의 이름으로 생성 3. 메니페스트 파일안에 -> MenuActivity 파일이 자동으로 추가 된다는것을 알아야한다. 4. activity_main.xml 에 Button 추가 "메뉴 엑티비티 띄우기" 5. MainActivity.java에 코드 추가cs123456789101112131415161718192021222324252627282930313233343536373839404142package com.example.example_parcelable; import android.content.Intent;import android.os.Bu..
지금 까지 우리가 공부한 내용을 보면, 액티비티를 띄우기 위해서는 인텐트를 사용하였고, 이때 데이터를 넣어서 보낼때는 엑스트라 데이터를 보내었다 액티비티는 스택구조로 되어있다.12345678910111213새로운 액티비티 (new) -> 실행 액티비티 이전 실행 액티비티액티비티 #n-1...... 액티비티는 차례대로 쌓인다고 생각하라(스택) 이때, 우리가 순서대로 쌓다보면 문제가 생긴다. #1 액티비티에서 #2 액티비티가 쌓이고 그다음에 또 #2 액티비티가 또 쌓이가 되는경우가 생긴다.#2번째 액티비티가 있으면 그것을 재사용하면 그것들을 없앨 수 있다.여기서 이때, 옵션을 주는데 "플래그"라고 칭한다.시스템이 해석하면서 -> 어떻게 처리해라 라는 식이다.Colored by Color Scriptercs가..
인텐트와 데이터 전달12안드로이드 어플리케이션(액티비티,서비스,브로드캐스트 수신자) -> 인텐트 모든것들이 연결되어 있다. 결국 인텐트 라는것은 안드로이드 시스템상에서 상당히 많이 왔다갔다 거리는 형식의 데이터이자 객체이다.액티비티간의 데이터전달도 가능하다.Colored by Color Scriptercs액션과 데이터를 사용하는 대표적인 예 속성설명 ACTION_DIAL tel:01011111111주어진 전화번호를 이용해 전화 걸기 화면을 보여줌 ACTION_VIEW tel:01011111111주어진 전화번호를 이용해 전화걸기 화면을 보여준다. URI 값의 유형에 따라 VIEW 액션이 다른 기능을 수행함 ACTION_EDIT content://contacts/people/2전화번호부 데이터베이스에 ..
액티비티는 안드로이드 시스템에서 관리한다. 안드로이드의 구성요소 중 하나이다.(하나의 화면으로 구성)안드로이드 애플리케이션을 구성하는 네가지 구성요소는?1234567891. 액티비티2. 서비스3. 브로드캐스트 수신자 (문자메시지)4. 내용 제공자 (사진을 쓰고 싶으면 내용제공자라는 놈을 만들어 주겠다 라는게 앨범속에서 사용이 되고 있다) 이 네가지 것들은 -> 시스템에서 관리 한다. 이 확인하는 과정에서는 시스템은 manifest.xml 파일을 확인하는 과정을 거치게 된다.하나의 화면에서 다른 화면을 전환할 때 자바 소스코드를 사용하게 되는데, 새로운 activity를 추가하고 전환하는 기능을 만들어 볼것이다.1예) 로그인 화면 -> 메뉴화면으로 넘어가는것을 만들어 볼것이다.cscsExample_Inte..
안드로이드 애플리케이션 구성요소에 대한 이해1234567XML 레이아웃 파일 자바 소스 코드 파일(activity_main.xml) (MainActivity.java)+ ==> 어플리케이션 실행(두개가 모여서 하나의 화면을 구성한다)R.layout.레이아웃 파일 이름Colored by Color Scriptercs인플레이션이란?1XML 레이아웃에 정의된 내용이 메모리에 객체화 되는 과정cs레이아웃 인플레이션의 이해 - 호출 순서1234567891011public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { ..
텍스트 뷰1234567891011121314151. text : 텍스트 뷰에 보이는 문자열을 설정할 수 있음2. textColor : 텍스트 뷰에서 표시하는 문자열의 색상을 변경함:색상 설정은 "#AARRGGBB" 포맷을 일반적으로 사용한다(Alpha,Red,Green,Blue):투명도를 나타내는 Alpha(색상만 사용할때 "FF",투명,"00",반투명,"88") 3. textSize : 텍스트 뷰에서 표시하는 문자열의 크기를 설정함("dp"나 "sp" 또는 "px" 등의 단위 값을 사용한다. 4. textStyle : 텍스트 뷰에서 표시하는 문자열의 스타일 속성을 설정함("normal","bold","italic"등의 값을 지정할 수 있음) 5. typeFace: 텍스트 뷰에서 표시하는 문자열의 폰트를..
이제 부터 XML 파일이 아닌 Java 소스를 건드려 보는 시간이 될겁니다.혹시 세팅을 하는 도중에 ConstraintLayout 이 올바르게 동작하지 않을경우 Design탭에가서 lib를 다운받아야 합니다~프레임 레이아웃 실습 하기12345678910111213141516171819202122232425262728293031323334351. ConstraintLayout(최상위 레이아웃) 2. Button 추가 3. FrameLayout추가 layout_width = 350dplayout_height = 430dp프레임 레이아웃 안에다가 사진이 화면에 보일 수 있도록 만들어놓은것이 ImageView 이다. 4. 이제 이미지 파일 2개를 사용할것이다.그래서 dream01.png , dream02.png..
테이블 레이아웃이란?격자 형태로 배치하는것이다.칼럼의 수가 증가된다. 표형식으로 오른쪽으로 생겨난다.공간을 할당 받는다. TableLayout 안에 넣어준다.123456789101112?xml version="1.0" encoding="utf-8"?>TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > TableRow android:layout_width="match_parent" android:layout_height="wrap_content"> ..
상대 레이아웃이란?다른 뷰나 부모 뷰와의 상대적인 위치를 이용해 뷰를 배치 하는 방법서로 연결고리가 되어있다고 생각하면 된다.Example_RelativeLayout 실습1. xml 탭으로 들어가서 RelativeLayout 으로 바꿔준다.2.제약 레이아웃이랑 비슷하다. (아무곳에나 붙일 수 있음.) 3. 버튼의 속성이 추가 된것을 확인 할 수 있다.123android:layout_alignParentTop="true"android:layout_alignParentLeft="true"android:layout_alignParentStart="true" // start도 사실상 특성과 left와 같다cs이렇게 하면 왼쪽 맨위쪽에 붙는것을 알수 있다.이때 속성 layout_width = match_pare..
대표적인 레이아웃1. 제약 레이아웃(ConstraintLayout)- 제약 조건 기반 모델2. 리니어 레이아웃(LinearLayout)- 박스(Box) 모델(창고에다가 박스를 쌓는다)- 방향을 지정 해야 한다.(아래쪽으로 쌓을까 오른쪽으로 쌓을까 등등)3. 상대 레이아웃(RelativeLayout)- 제약 레이아웃과 유사하다- 규칙 기반 모델4. 프레임 레이아웃(FrameLayout)- 한번에 하나의 뷰만 보여주는 레이아웃- 중요하게 사용된다.- 싱글(Single) 모델5. 테이블 레이아웃(TableLayout)- 격자 레이아웃(Grid) 모델- 상대적으로 많이 쓰이지 않는다.레이아웃 특징LinearLayout 리니어 레이아웃- Vertical 세로 방향으로 쌓기- Horizontal 가로 방향으로 쌓기..
ConstaintLayout 사용하기1. Button 생성 -> 버튼에 연결점을 사용하여 위에 레이아웃과 붙여 본다.2. 점을 누르면 Margin의 값을 16->8로 변경하여 버튼의 위치를 결정할 수 있다.예를 들어) 왼쪽 벽면 레이아웃과 점을 연결 시키고, 위쪽 벽면 레이아웃과 점을 연결시킨 다음에 버튼의 크기를 늘리면, 그 버튼이 연결시킨 점과 연결되어 버튼의 위치가 결정 된다.다른 뷰의 연결선과 연결선을 결정 할 수 있다. 예를 들어 ) bt1, bt2 가 있는데, bt1과 b2를 제약 레이아웃으로 연결할 수 있다. 큰 레이아웃과 연결 시키고 점을, 버튼 끼리 점을 연결 시킬 수 있다. 자석 모양의 역할: 자석 모양을 풀고 버튼을 갖다 놓으면 연결선이 자동으로 완성 된다.예를 들어) 버튼 하나를 ..
- Total
- Today
- Yesterday
- 초보자를 위한 C언어 300제
- 백준알고리즘
- 코드엔진
- 개발하는 관광이
- Algorigm
- node.js
- 알고리즘
- Spring
- 백준
- 노드
- MVC
- Android
- Controller
- 감자코딩
- 학교
- C언어
- C langauge
- node
- 안드로이드
- 프로그래밍
- BFS
- 텐서플로우
- db
- 리버싱
- TensorFlow
- 머신러닝
- 감자개발자
- programming
- 복습
- 스프링
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |