분류 전체보기556 Android Studio, Kotlin] 화면 터치 시 클릭이벤트와 손가락 무빙 이벤트를 다르게 처리하기 가끔 모션 개발을 하다 보면, Action_Move가 들어가야 할 케이스가 있다. 여기서, 손가락을 단순 클릭 했을 때와 움직임과 무빙 후 움직임이 달라야하는 케이스가 있다. 이 때, 얼마나 짧게 클릭하던 무조건 Action_move가 호출된다 봐도 무방하기 때문에, 초기 클릭과 손가락을 뗐을 때의 시간차를 계산하여 이를 단순 클릭인지, 혹은 이동 후 손가락을 뗀 것인지 판단한다. 사용자의 특성과 코드의 특징에 따라 longClickLimitf를 조절하여 클릭으로 판단하는 시간의 길이를 유동적으로 조절해야 한다. 호출 시기는 아래에 주석으로 적어두었다. var firstClickTime : Long = 0 val longClickLimit = 200 rootView?.setOnTouchListener {.. 2023. 3. 17. Android Studio, Kotlin] WindowManager을 이용하여 휴대폰 최상단에 화면 그리기 요즘 휴대폰 최상단에 뷰를 그려주는 앱이 많다. 아마 "다른 앱 위에 그리기" 를 허용하는 앱이 많은 것을 다들 보셨을텐데, 그 기능이다. 어떻게 사용하는지 보자. 간단하게 액티비티와 윈도우에 구애받지 않는다는 것을 보여주기 위해 두 개의 액티비티와, 윈도우 위에 그릴 하나의 뷰를 준비한다. 예시 파일은 아래에 접어두었다. (접은 글 안에 있는, 최상단 뷰를 호출하는 코드와 권한을 요쳥하는 코드는 아직 포함하지 않았다.) (또한, 뷰를 껐다가 켤 수 있는 전역변수를 const로 지정하기 위해 object 파일을 하나 더 만들었다) 더보기 - MainActivity.kt class MainActivity : AppCompatActivity() { private lateinit var textViewMain.. 2023. 3. 16. WindowManager가 무엇일까? 최상단에 뷰를 넣어야 할 일이 생겼다. 그럼 이걸 어떻게 넣는데? 바로 WindowManager을 이용하는 것이다. 그럼 WindowManager은 뭔데? 우리가 앱을 만들 때, 기본적으로는 볼 일이 없는 인터페이스다. 뷰를 알아서 윈도우에 붙여주는게 오버라이딩 되어있으니 평소에는 볼 일이 없는 것이다. 역할은 표면을 할당하고 애플리케이션(애플리케이션)이 이동할 위치와 계층화 방법을 결정한다. 근데 뷰가 액티비티에 종속되지 않고 윈도우에 종속되어야 하는.. 그런 특수한 상황이 발생한다면, 그 때 호출하는 매서드이다. 이 때, 액티비티를 굳이 호출하지 않고도 windowmanager과 직집 소통할 수 있다. 그래서 그거 어떻게 하는건데? 호출은 간단하다. 액티비티에 종속되어 있기 때문에 activity를 .. 2023. 3. 16. Kotlin] 백준 1008번 문제 풀이 https://www.acmicpc.net/problem/1008 1008번: A/B 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 더보기 이번 문제의 핵심은 10^-9까지 출력해야한다는 점이다. 선택해야하는 자료형과 출력방식을 유의해야한다. 소수점을 표현하는 방식으로 float와 double을 많이 쓰게 되는데, float는 7자리 수, double은 16자리 수까지 표현한다. 따라서, 1/3을 할 경우 float는 0.3333334로 출력되지만, double은 0.3333333333333.. 으로 출력된다. 이번 문제를 보면, 라는 조건이 있다. 실제로 float를 10자리까지 늘려보면 0.3333334333로 출력되므로, 10^-7에서.. 2023. 3. 9. 이전 1 ··· 34 35 36 37 38 39 40 ··· 139 다음 반응형