목록전체 글 (23)
layered

개념 버튼을 클릭하거나 화면을 터치하게 되면 이벤트라는 것이 만들어지는데, 이는 화면의 어느 부분에 어떻게 동작이 일어났는지에 대한 정보를 담게 된다. 이 이벤트를 가로채는 방법은 크게 두 가지가 있다. 제대로 이해한 게 맞는지 모르겠다... 1 콜백 메서드 재정의 View 클래스는 onTouchEvent()처럼 안드로이드 프레임워크에 의해 호출되는 콜백 메서드를 기본적으로 가지고 있다. 그리고 이를 이용해 이벤트를 가로채려면 클래스를 상속해서 메서드를 재정의해 줘야 한다. 하지만 이벤트 하나 처리하자고 매번 상속하고 재정의하는 것이 번거롭기 때문에, 안드로이드에서는 2와 같은 이벤트 리스너 기능을 지원한다. 뷰 클래스를 어쩔 수 없이 상속해야 하는 경우엔 이벤트 핸들러라는 것을 별도로 지원한다! 메모 ..
https://www.acmicpc.net/problem/27447 27447번: 주문은 토기입니까? 첫 번째 줄에는 손님의 수를 나타내는 정수 $N$과 토기에 담겨진 커피가 흙탕물이 되는 시간을 나타내는 정수 $M$이 공백을 사이에 두고 주어진다. ($1\le N,M\le 1\, 000\, 000$) 두 번째 줄에는 각 손님 www.acmicpc.net 한별이는 매시간마다 다음 중 하나의 일을 할 수 있다. 1. 토기를 만든다 2. 커피를 담는다 3. 서빙한다 이 일들은 시간과 횟수의 두 가지 관점에서 볼 수 있는데 1. 토기는 언제든 만들어도 되고 남아도 상관이 없다 2. 커피는 너무 일찍 담으면 흙탕물이 되므로 제한된 시간 내에 만들어야 한다 3. 서빙은 손님이 방문한 시간에 해야 하므로 고정되어 ..

개념 표나 엑셀 시트와 같은 형태로 화면을 나타내는 레이아웃. 레이아웃 안에 TableRow 태그를 통해 행을, 그 안에 여러 개의 뷰들을 넣는 방식으로 열을 구상한다. (TableRow 말고 다른 걸 넣을 수도 있다고 한다.) 안에 넣은 뷰들은 왼쪽부터 순서대로 0, 1, 2 ...와 같은 열 번호를 부여받는다. 메모 테이블 레이아웃의 자식 뷰들은 layout_width와 layout_height에 제약이 걸려 있다. TableRow의 layout_width와 layout_height는 설정할 수 없으며 고정된 값은 각각 match_parent, wrap_content이다. (가로 공간을 꽉 채우기 위함이다!) 나머지 자식들의 layout_height는 설정할 수 있다. TableRow 안에 들어 있는..