분류 전체보기

안드로이드/UI

[Android] ConstraintLayout에서 뷰의 배치를 돕는 가상 오브젝트

Guideline Guideline은 레이아웃 작성 시에 가이드라인을 잡아주는 역할을 합니다. 한 화면 내에서 가상의 선을 하나 그어, 해당 선에 view들의 constraint를 주는 역할을 합니다. android:id : 해당 Guideline의 id android:orientation : Guideline의 방향 설정 (vertical / horizontal) app:layout_constraintGuide_xxx : Guideline의 위치 지정 app:layout_constraintGuide_begin : 화면의 시작으로부터 얼마만큼 떨어져 있을지 지정 app:layout_constraintGuide_end : 화면의 끝으로부터 얼마만큼 떨어져 있을지 지정 app:layout_constraint..

안드로이드/개념

[Android] 명시적 인텐트와 암시적 인텐트

명시적 인텐트 명시적 인텐트는 인텐트를 충족하는 애플리케이션이 무엇인지 지정합니다. 이를 위해 대상 앱의 패키지 이름 또는 완전히 자격을 갖춘 구성 요소 클래스 이름을 제공합니다. 명시적 인텐트는 일반적으로 앱 안에서 구성 요소를 시작할 때 씁니다. 시작하고자 하는 액티비티 또는 서비스의 클래스 이름을 알고 있기 때문입니다. 예를 들어, 사용자 작업에 응답하여 새로운 액티비티를 시작하거나 백그라운드에서 파일을 다운로드하기 위해 서비스를 시작하는 것 등이 여기에 해당됩니다. // 액티비티 val intent = Intent(this, InputActivity::class.java) startActivity(intent) // 서비스 val downloadIntent = Intent(this, Downloa..

안드로이드/개념

[Android] Activity 상태 변경 처리

활동 상태 변경 처리 활동 상태 변경 처리 | Android 개발자 | Android Developers 활동은 사용자가 전화 걸기, 사진 찍기, 이메일 보내기 또는 지도 보기와 같은 작업을 하기 위해 상호작용할 수 있는 화면을 제공하는 애플리케이션 구성요소입니다. 각 활동에는 사용자 인터페 developer.android.com 사용자가 Activity를 벗어났다가 다시 돌아왔을 때 Activity가 작동하는 방식을 수명 주기 콜백 메서드에서 선언할 수 있습니다. 1. Configuration 변경 발생 구성 변경을 트리거할 수 있는 여러 이벤트가 있습니다. 아마도 가장 눈에 잘 띄는 예는 세로 모드와 가로 모드 간 방향 변경일 것입니다. 구성 변경을 일으킬 수 있는 다른 사례로는 언어 또는 입력 기기..

안드로이드/개념

[Android] Android의 이해

1. Activity 생명주기 활동 수명 주기에 관한 이해 | Android 개발자 | Android Developers 활동은 사용자가 전화 걸기, 사진 찍기, 이메일 보내기 또는 지도 보기와 같은 작업을 하기 위해 상호작용할 수 있는 화면을 제공하는 애플리케이션 구성요소입니다. 각 활동에는 사용자 인터페 developer.android.com 앱의 완성도와 안정성을 높이기 위해 반드시 알아야 함 다른 앱으로 전환 시, 비정상 종료 되는 문제 사용자가 앱을 사용하지 않는데, 시스템 리소스가 소비되는 문제 사용자가 앱을 나갔다가 돌아왔을 때, 진행상태가 저장되지 않는 문제 화면이 가로 ↔ 세로 전환 될 때, 비정상 종료되거나, 진행상태가 저장되지 않는 문제 콜백 onCreate 필수적으로 구현해야함 Ac..

안드로이드/개념

[Android] Kotlin의 이해

1. Lambda (람다) Kotlin에서 함수 유형 및 람다 표현식 사용 | Android Developers Kotlin에서 람다 표현식과 고차 함수의 사용 방법을 알아봅니다. developer.android.com 2. Extension Function (확장 함수) Extensions | Kotlin kotlinlang.org 3. Scope Function (범위 지정 함수) Scope functions | Kotlin kotlinlang.org 코틀린 표준 라이브러리에서 제공하는 확장 함수 목적 : 간결성, 명료성, 유지보수 용이성 정의 : 객체의 컨텍스트 내에서, 실행 가능한 코드 블럭을 만드는 함수 호출 시, 임시 범위가 생성되며, 이 범위 안에서는 이름 없이 객체에 접근가능 context..

알고리즘/그래프

[백준] 1854번 K번째 최단경로 찾기 (JAVA)

문제 https://www.acmicpc.net/problem/1854 1854번: K번째 최단경로 찾기 첫째 줄에 n, m, k가 주어진다. (1 ≤ n ≤ 1000, 0 ≤ m ≤ 2000000, 1 ≤ k ≤ 100) n과 m은 각각 김 조교가 여행을 고려하고 있는 도시들의 개수와, 도시 간에 존재하는 도로의 수이다. 이어지는 m개의 줄에 www.acmicpc.net 설명 i번 도시에서 i번 도시로 가는 최단경로는 0이지만, 일반적인 k번째 최단경로는 0이 아닐 수 있음에 유의한다. 또, k번째 최단경로가 존재하지 않으면 -1을 출력한다. 최단경로에 같은 정점이 여러 번 포함되어도 된다. 도로의 정보를 저장하기 위한 Road 클래스를 만들고 리스트를 만들어 연결관계를 저장한다. 이때, 소요 시간이 ..

알고리즘/그래프

[백준] 11404번 플로이드 (JAVA)

문제 https://www.acmicpc.net/problem/11404 11404번: 플로이드 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 설명 모든 도시의 쌍 (A, B)에 대해서 도시 A에서 B로 가는데 필요한 비용의 최솟값을 구해야 한다. 모든 도시 쌍들 사이의 최단 경로를 구하는 방법으로는 플로이드-워셜 알고리즘이 있다. i번째 도시에서 j번째 도시까지의 최소 비용을 저장할 costs[i][j] 배열을 만든다. 자기 자신은 0으로 채우고 나머지는 Integer.MAX_VALUE로 채운다. // 자기 자신은 0으로 채우고 ..

알고리즘/그래프

[백준] 11657번 타임머신 (JAVA)

문제 https://www.acmicpc.net/problem/11657 11657번: 타임머신 첫째 줄에 도시의 개수 N (1 ≤ N ≤ 500), 버스 노선의 개수 M (1 ≤ M ≤ 6,000)이 주어진다. 둘째 줄부터 M개의 줄에는 버스 노선의 정보 A, B, C (1 ≤ A, B ≤ N, -10,000 ≤ C ≤ 10,000)가 주어진다. www.acmicpc.net 설명 1번 도시에서 출발해서 나머지 도시로 가는 가장 빠른 시간을 구해야 한다. 시간 C가 양수가 아닌 경우가 있다. C = 0인 경우는 순간 이동을 하는 경우, C < 0인 경우는 타임머신으로 시간을 되돌아가는 경우이다. 만약 어떤 도시로 가는 과정에서 시간을 무한히 오래 전으로 되돌릴 수 있다면 첫째 줄에 -1을 출력한다. 음의..

damon-911
'분류 전체보기' 카테고리의 글 목록 (16 Page)