본문 바로가기

전체 글100

안드로이드 : , 수평선 긋기, 버튼 쉽게 만들기, 이미지와 텍스트가 같이 들어가는 버튼 만들기, RalativeLayout 속성들 수평선 긋기 하다보니 수평선을 그어야 하는데 이거 때문에 이미지를 넣는다는 것은 너무나도 번거롭다. xml로 간단하게 수평선을 만들 수 있다. 버튼 쉽게 만들기 버튼을 꾸며주려고 xml을 수정하던 중에 다른 블로그에서 좀 더 쉽게 수정할 수 있는 사이트를 알려주었다. 해당 코드가 어떻게 적용되는지 좀 더 직관적으로 알 수 있어서 추천한다. https://angrytools.com/android/button/ Android Button Maker angrytools.com 위의 링크로 들어가면 사이트가 나올 것이다. 사용법도 쉬운 편이다. 이미지와 텍스트가 같이 들어가는 버튼 만들기 button 태그에서 만들면 된다. 아래 코드 참고 간혹 버튼 안에 들어가는 이미지가 커서 곤란한 경우가 있다. 그럴 때에는.. 2023. 12. 18.
안드로이드 스튜디오, 코틀린: The logging tag can be at most 23 characters, was 24 (SecondActivity_Lifrcycle) 태그 23자 제한? 액티비티의 라이프 사이클 흐름을 보기 위해서 로그를 보려는데 The logging tag can be at most 23 characters, was 24 (SecondActivity_Lifrcycle) 라는 빨간 경고창이 뜬다. 태그가 23자를 넘으면 안된다니 이게 뭔 소린가 찾아봤더니 역시 그 곳에는 나랑 똑같은 경험을 한 사람이 있었다... 내가 한 뻘짓은 이미 예전에 다른 사람이 했던 뻘짓이다. https://stackoverflow.com/questions/28168622/the-logging-tag-can-be-at-most-23-characters The logging tag can be at most 23 characters Since update AS 1.1 Preview 2, I'm g.. 2023. 12. 15.
TIL : 20231214 ui의 기본 단위는 view이다. 위젯 -> 화면을 구성하는 요소. 예)버튼,리스트,메뉴 등등 레이아웃 -> 뷰를 감싸면서 정렬하는 기능을 지는 ui요소 match_parent(혹은fill_parent) -> 부모 UI컴포넌트의 크기에 맞춤 wrap_content -> UI컴포넌트의 내용물 크기에 맞춤 위젯의 크기를 px로 쓰지 않고 dp로 쓰는 이유는 px은 절대값이기 때문에 화면의 크기가 달라지면 비율이 이상해진다. 그래서 비례값인 dp로 쓰는 것이다. TextView 속성 text -> 내용 textsize - > 글자 크기 textStyle -> 텍스트 스타일 normal,bold, italic typeface - > 폰트 textColor ->글자 색상 singleLine -> true면 위젯의.. 2023. 12. 14.
TIL : 20231213 북마크 북마크 F11, 컨트롤 F11을 하면 빠른 단축키 지정 가능. 빠른 단축키 사용은 컨트롤+내가 설정한 키. 빠른 단축키를 사용하면 바로 해당 라인으로 이동한다. 화면 하단 단추들 기능 version control -> 형상 관리 run -> 실행 중 나오는 메시지 (println() 같은거) profiler -> 실행 시 메모리 사용량, 네트워크 사용량 등 분석 용도 log cat -> 로그가 뜨는 곳. run과는 다름 ***** app quality insights -> firebase와 연동하여 퀄리티를 높힘. 잘 안씀 TODO -> 할 일 목록 .TODO("해야할 일")안에 적혀있는 내용을 한번에 보고 관리할 수 있다. problems -> 현재 소스의 문제점을 보여줌 terminal -> .. 2023. 12. 13.
TIL: 20231212 숫자들끼리는 toInt()나 toShort(),toDouble()을 입력해주면 변환된다. 문자를 숫자로 바꾸는 법은 Integer.parseInt(str), double은 str.toDouble()이다. 업캐스팅 , 자식객체에서 부모객채로 생성하는 것. 일반적으로 업캐스팅이 많이 쓰인다. 다운캐스팅, 부모객채를 자식객체로 생성하는 것. 다운캐스팅은 자식이 부모의 속성을 가져야하기 때문에 불가능함. 변수 is type -> is로 타입을 확인할 수 있다.true나 false를 반환한다. pair -> 보통 메소드는 하나의 객체만 반환한다. pair를 사용하면 2개의 객체를 반환할 수 있 다. 물론 콜렉션 같은 개체로 여러값을 전달하는 경우가 있긴 하다. pair(값,값) 형태로 변수에 담아서 반환하면 된다.. 2023. 12. 12.
코틀린: readLine/readln 으로 날짜만 입력받기 fun isDate() : Int { //입력 ex) 2024년01월01일, 2023-12-31, 2024/03/03 . 출력: 20240101, 20230213402 while(true){ try { var date = readln() date = date.replace("\\D".toRegex(),"") var day = date.takeLast(2).toInt() date = date.dropLast(2) var month = date.takeLast(2).toInt() date = date.dropLast(2) var year = date.toInt() var localDate = LocalDate.of(year,month,day) val formatter = DateTimeFormatter.of.. 2023. 12. 11.
프로그래머스 :공원 산책 class Solution { fun solution(park: Array, routes: Array): IntArray { var answer: IntArray = intArrayOf() var currentPlace = intArrayOf(0,0) for (i in park.indices){ if(park[i].contains("S")){ currentPlace[0]=i currentPlace[1]=park[i].indexOf("S") } } for(str in routes){ var move = str.split(" ") var check = true when(move[0]){ "E"-> { // println("E로 ${move[1]}칸 가야함- move[1]+curplace[1] = ${move.. 2023. 12. 11.
TIL : 코틀린 기초 생성자 생성자는 객체를 만들 때 값을 넣어주는 것이다. 주생성자는 클래스 이름 옆에 쓴다. 예)class 이름 ( --> name:String , age: Int 2023. 12. 11.
TIL: 프로그래머스 달리기 경주, 시간복잡도(Time Complexity) class Solution { fun solution(players: Array, callings: Array): Array { var answer: Array = arrayOf() var playerArray=players var change1 = 0 var change2 = 0 var temp= "" var idx = 0 for(i in 0 until callings.size){ change1= playerArray.indexOf(callings[i])-1 change2= change1+1 temp=playerArray[change2] playerArray[change2]=playerArray[change1] playerArray[change1]=temp idx++ continue } return a.. 2023. 12. 8.