전체 글

Android

[Android] Qr Zxing 라이브러리 적용하기

https://github.com/journeyapps/zxing-android-embedded GitHub - journeyapps/zxing-android-embedded: Barcode scanner library for Android, based on the ZXing decoder Barcode scanner library for Android, based on the ZXing decoder - GitHub - journeyapps/zxing-android-embedded: Barcode scanner library for Android, based on the ZXing decoder github.com 이 깃허브에 들어가게 되면 build.gradle에 추가하기! implementation..

Android

[Android] App Main Icon 적용하기

어플을 만들면서 나만의 아이콘을 넣기 저는 아이콘 이미지를 미리 만들때 여기 사이트를 이용했습니다. https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html#foreground.type=clipart&foreground.clipart=android&foreground.space.trim=1&foreground.space.pad=0.25&foreColor=rgba(96%2C%20125%2C%20139%2C%200)&backColor=rgb(68%2C%20138%2C%20255)&crop=0&backgroundShape=circle&effects=none&name=ic_launcher Android Asset Studio - Launcher i..

Android

[Android] Coroutines

코루틴은 안드로이드 앱에서 메인 스레드에서 수행되는 XML 구문 분석, 뷰 인플레이션 및 클릭 이벤트와 같은 사용자 상호 작용과 같은 작업으로 인해 실행 시간이 짧은 두 새로고침 간의 시간보다 길어질 때 앱이 성능 오류를 보여줄 수 있는 문제를 해결하기 위해 사용됩니다. 즉, 앱이 응답하지 않는 오류가 발생할 수 있습니다. 또한, 기술적 발전으로 인해 새로고침 주파수가 매년 높아지고 있습니다. 따라서 안드로이드 개발자는 항상 긴 작업을 별도의 스레드에서 비동기적으로 실행하도록 노력해야 합니다. 이 때, 코루틴은 rxjava, AsyncTask, executors, HandlerThreads, IntentServices와 같은 다른 방법으로 처리하던 귀찮은 멀티스레딩 작업을 쉽고 효율적으로 수행할 수 있도..

Kotlin

Kotlin in Action 3장

코틀린에서 컬렉션 만들기 val set = hashSetOf(1, 7, 53) val list = arrayListOf(1, 7, 53) val map = hashMapOf(1 to "one", 7 to "seven", 53 to "fifty-three") 코틀린은 자신만의 컬렉션 기능을 제공하지 않는다. 그 이유는 뭘까? 표준 자바 컬렉션을 활용하면 자바 코드와 상호작용하기가 훨씬 더 쉽다. 자바에서 코틀린 함수를 호출하거나 코틀린에서 자바 함수를 호출할 때 자바와 코틀린 컬렉션을 서로 변환할 필요가 없다. 하지만 코틀린에서는 자바보다 더 많은 기능을 쓸 수 있다. fun main(args: Array) { val strings = listOf("first", "second", "fourteenth")..

Android

[Android] Lottie Splash

이쁜 Splash 화면을 만들기 위하여 찾은 Lottie Lottie_Animation : https://lottiefiles.com/featured Lottie 최신버젼 : https://lottiefiles.com/blog/working-with-lottie/getting-started-with-lottie-animations-in-android-app JSON 파일 다운받기 build.gradle(:app)에 들어가서 설정하기 def lottieVersion = "6.0.0" implementation "com.airbnb.android:lottie:$lottieVersion" rew폴더에 raw폴더를 생성후 그안에 JSON 파일 넣기(대문자나 - 특수문자 제거하고 넣어야함) package com...

Kotlin

Kotlin in Action 2장

기본 요소 : 함수와 변수 Hello, World! fun main(args: Array) { println("Hello, world!") } 간단한 코드에서 코틀린의 여러가지 특성을 볼수 있다. 함수를 선언할 때 fun 키워드를 사용한다. 파라미터 이름 뒤에 그 파라미터의 타입을 쓴다. 함수를 최상위 수준에 정의할 수 있다. (자바와 달리)꼭 클래스 안에 함수를 넣어야 할 필요가 없다. 배열도 일반적인 클래스와 마찬가지다. 코틀린에는 자바와 달리 배열 처리를 위한 문법이 다로 존재하지 않는다. System.out.println 대신에 println이라고 쓴다. 코틀린 표준 라이브러리는 여러 가지 표준 자바 라이브러리 함수를 간결하게 사용할 수 있게 감싼 래퍼를 제공한다. println도 그런 함수 중 ..

Algorithm/Java알고리즘 문제풀이 & Kotlin

[Algorithm] 임시반장 정하기

설명 김갑동 선생님은 올해 6학년 1반 담임을 맡게 되었다. 김갑동 선생님은 우선 임시로 반장을 정하고 학생들이 서로 친숙해진 후에 정식으로 선거를 통해 반장을 선출하려고 한다. 그는 자기반 학생 중에서 1학년부터 5학년까지 지내오면서 한번이라도 같은 반이었던 사람이 가장 많은 학생을 임시 반장으로 정하려 한다. 그래서 김갑동 선생님은 각 학생들이 1학년부터 5학년까지 몇 반에 속했었는지를 나타내는 표를 만들었다. 예를 들어 학생 수가 5명일 때의 표를 살펴보자. 위 경우에 4번 학생을 보면 3번 학생과 2학년 때 같은 반이었고, 3번 학생 및 5번 학생과 3학년 때 같은 반이었으며, 2번 학생과는 4학년 때 같은 반이었음을 알 수 있다. 그러므로 이 학급에서 4번 학생과 한번이라도 같은 반이었던 사람은..

Android

[Android] 양방향 DataBinding

ViewModel & DataBinding 이전의 DataBinding은 앱의 뷰와 간접적으로 연결을 하고 있었습니다. 이제는 DataBinding을 View Model에 직접적으로 연결 할것입니다. package com.anushka.viewmodeldemo1 import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.databinding.DataBindingUtil import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.anushka.viewmodeldemo1.databinding.ActivityM..

Algorithm/Java알고리즘 문제풀이 & Kotlin

[Algorithm] 봉우리

설명 지도 정보가 N*N 격자판에 주어집니다. 각 격자에는 그 지역의 높이가 쓰여있습니다. 각 격자판의 숫자 중 자신의 상하좌우 숫자보다 큰 숫자는 봉우리 지역입니다. 봉우리 지역이 몇 개 있는 지 알아내는 프로그램을 작성하세요. 격자의 가장자리는 0으로 초기화 되었다고 가정한다. 만약 N=5 이고, 격자판의 숫자가 다음과 같다면 봉우리의 개수는 10개입니다. 입력 첫 줄에 자연수 N이 주어진다.(2= 0 && ny = arr[i][j]) { flag = false; break; } } if (flag) answer++; } } return answer; } public static void main(String[] args) { Main T = new Main(); ..

Algorithm/Java알고리즘 문제풀이 & Kotlin

[Algorithm] 숫자만 추출

설명 문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만듭니다. 만약 “tge0a1h205er”에서 숫자만 추출하면 0, 1, 2, 0, 5이고 이것을 자연수를 만들면 1205이 됩니다. 추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다. 입력 첫 줄에 숫자가 섞인 문자열이 주어집니다. 문자열의 길이는 100을 넘지 않습니다. 출력 첫 줄에 자연수를 출력합니다. import java.util.Scanner; public class Main { public int solution(String str) { String answer = ""; for(char x : str.toCharArray()){ if (Character.isDigit(x)) answe..

yunJaem06
비바윤