300x250
반응형

코딩 (독학) 29

[Android : Kotlin] 안드로이드 버튼 background drawable(shape) 적용 안되는 이유

🐱‍🏍 Android Button background drawable 적용이 되지 않을 때 대처 방법 Android Button Customizing을 하기 위하여 drawable 폴더에 shape를 만들고, Button 태그에서 background에 적용시켜줄 때 적용이 되지 않고 default button 모양이 그대로 보여질 때가 있다. 이 경우에 어떻게 대처해야 하는지를 다루었다. shape를 아래 코드와 같이 만들어 주었다. 위와 같은 모양을 나타내기 위해 shape 코드를 작성 해 주었고, 아래와 같이 Button에 적용 해 주었다. 그랬더니 처음 버튼을 추가하면 나오는 Default Button 이 나와버린다. 이런 경우, 을 또는 으로 바꿔주면 해결된다. 🐱‍🏍 적용이 되지 않았던 원인은 ..

[Android : Kotlin] 코틀린에서 문자열을 쪼개는 2가지 방법 (Split과 StringTokenizer의 차이)

🐱‍🏍 Android Call-Back Pattern 대부분의 언어는 아래와 같이 split() 함수를 통해서 문자열을 쪼갠다. ### Python3 StringVal = "대 한 민 국" print(StringVal.split(" ") #['대', '한', '민', '국'] 출력 print(StringVal.split(" ")[0]) # '대' 출력 print(StringVal.split(" ")[1]) # '한' 출력 print(StringVal.split(" ")[2]) # '민' 출력 print(StringVal.split(" ")[3]) # '국' 출력 그리고 자바에서는 split() 뿐만 아니라 StringTokenizer를 통해서도 쪼갤 수 있는데, 이것이 다행히도 코틀린에서도 가능하다. i..

[백준] 11021번 : A+B-7 - Kotlin [코틀린]

문제 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 알고리즘 테스트 케이스의 개수 T를 입력받는다. 다음 줄에서 각각의 정수 A와 B를 입력받는다. A와 B의 +연산을 하고, 각 테스트 케이스마다 출력 해 준다. 풀이 import java.io.* import java.util.* fun main() : Unit { val br = BufferedReader(InputStreamReader(System.`in`)) val bw = BufferedWriter(OutputStreamWriter(System.out)) var TC : Int = 1 repeat(br.readLine(..

[백준] 2741번 : N찍기 - Kotlin [코틀린]

문제 (2741번 : N 찍기 - Kotlin[코틀린]) 2741번: N 찍기 자연수 N이 주어졌을 때, 1부터 N까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. www.acmicpc.net 알고리즘 자연수 N을 입력받고, for 반복문을 이용하여 1부터 N까지 반복 출력한다. 단, 출력 한번당 한번의 개행이 있어야한다. 풀이 - 1번 풀이 (java.util.Scanner를 이용한 풀이) import java.util.* fun main() : Unit = with(Scanner(System.`in`)) { val N = nextInt() for(i in 1..N) println("${i}") } 대부분 단순히 위와 같은 풀이로 접근했을 것 같다. Scanner를 import 해준 뒤, N을 ne..

[Android : Kotlin] 안드로이드 콜백과 리스너에 대하여

🐱‍🏍 Android Call-Back Pattern 사전 정의) Callback : 답신 전화 (다시 전화), 회신, 재통보 등.. 그렇다면, Android에서 Callback의 의미는 무엇을 의미할까? Callback Method란, 다른 함수에 인수로 전달되는 함수이며, 일종의 이벤트 후에 실행 될 것으로 예상된다. 콜백 메소드의 목적은 다른 클래스에서 일부 작업이 완료된 경우 클래스 Sync/Async에 알리는 것이다. 이는 비동기 작업을 할 때 매우 유용하다. Button을 누르거나 인터넷에서 데이터를 가져온 후 일부 작업을 수행하거나, 컨텐츠를 표시하는 등의 일상적인 작업을 수행하려 한다고 가정한다. 콜백 기능을 통해 버튼을 누르면 알림을 받으므로 이벤트 처리에 사용된다. 이 유형의 디자인 패..

[백준] 15552번 : 빠른 A+B - Kotlin [코틀린]

문제 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 알고리즘 BufferedReader 와 BufferedWriter를 사용하여 각 입력 값들의 덧셈을 하여 출력한다. 풀이 먼저 여태까지의 모든 문제 풀이들은 비교적 사용이 간편한 Scanner와 단순한 println 을 사용했다. 그러나, 이런 풀이 방법은 내부적으로 많은 공정이 이루어지기 때문에 심각한 비효율적 검사가 발생하고, 당연히 처리 속도가 굉장히 느려진다. 그렇기 때문에 BufferedReader와 BufferedWriter를 사용하여 본 문제를 풀 수 있도록 의도..

[백준] 2480번 : 주사위 세개 - Kotlin [코틀린]

문제 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 알고리즘 1. 같은 눈이 3개인 경우 연산 : 10000 + (같은 눈) * 1000 2. 같은 눈이 2개인 경우 연산 : 1000 + (같은 눈) * 100 3. 모든 눈이 다른 경우 연산 : (같은 눈) * 100 풀이 - 내가 작성한 코드 import java.util.Scanner import java.util.Random import java.util.Collections // import java.util.* fun main() =..

[백준] 2884번 : 알람 시계 - Kotlin [코틀린]

문제 알고리즘 1. 상근이가 설정한 알람시간을 45분 앞당겨 출력한다. 2. Scanner로부터 입력받은 Minute가 45보다 작으면 Hour - 1을 하고, Minute는 60-(45-minute)하여 계산하라. 3. Minute가 45보다 크다면 그대로 Minute-45를 한다. 4. Hour가 0보다 작다면 H=23하여 23시로 설정한다. 풀이 - 1번 방법 (가장 일반적인 방법) import java.util.* fun main() : Unit = with(Scanner(System.`in`)) { var H = nextInt() var M = nextInt() if(M

[백준] 2588번 : 곱셈 - Kotlin [코틀린]

2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 문제 알고리즘 (1)과 (2)의 곱셈을 진행하는 문제이고, (3), (4), (5)는 각각 (2)의 자릿수에 따른 곱셈 과정이다. (3)은 472*5의 과정이고, (4)는 472*5, (5)는 472*3의 과정이다. 1. 수학적으로 접근하여 각각의 자리수를 나누어 출력하고, 맨 마지막 결과는 (1)과 (2)의 곱셈을 출력하면 된다는 것이 가장 먼저 드는 단순한 방법인 것 같다. 2. (2)를 문자열로 받아서 JAVA에서의 charAt( )과 같이 한문자식 .toInt( ) 로 변환하여 (1)과 곱해서 출력하는 방법이 있는 것 같다. 풀이 - 1번 방법 import j..

[Kotlin Algorithm] 코틀린 알고리즘 문제풀이 TIP !

이번 포스트에서는 Android Native Language인 Kotlin을 이용한 알고리즘 문제를 풀 때의 유용한 TIP을 공유하고자 한다. 주로 방문하는 알고리즘 문제풀이 사이트는 아래와 같다. 1) 백준 (난이도 등 카테고리가 상세하게 잘 나뉘어져 있음.) Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 2) 프로그래머스 (알고리즘 별로 나뉘어져 있고, 프로필을 작성하여 채용 시장에 올릴 수 있고, 다양한 스킬업 프로그램이 있음) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 ..

728x90
반응형