본문 바로가기

분류 전체보기98

[Android] Fragment로 Activity 구성 및 통신 - 2 저번 포스팅에 이어, Activity에 세 개의 Fragment를 띄울 것이다. 컨셉은 간단한 펫샵으로 해 보겠다. 각 Fragment는 버튼을 가지고 있고 그 버튼을 누르면 Fragment에 해당하는 애완동물이 판매되었음을 액티비티에 알린다. 그리고 액티비티는 각 애완동물이 판매된 수를 텍스트뷰로 보여주도록 하겠다. - activity_main.xml 수정 TextView 1개, FrameLayout 3개로 구성하였다. 펫은 강아지, 고양이, 토끼 로 구분하였다. 제약조건은 본인의 취향에 따라 수정하도록 한다. 이 포스팅은 서로 연결되도록 하였고 "layout_constraintVertical_chainStyle="spread" 를 사용하였다. ConstraintLayout의 제약조건에 대해서는 깊게 .. 2020. 5. 23.
[Android] Fragment로 Activity 구성 및 통신 - 1 이번 포스팅 주제는 Activity를 분할하여 구성할 수 있는 Fragment에 대한 것이다. 보통 Activity를 구현하면 하나의 레이아웃 파일에 화면을 구성한다. 만약 화면이 다른 구성으로 동적으로 변화해야 한다거나 구성이 다양하다거나 하는 경우 복잡한 레이아웃을 가질 수 있다. 이런 경우 Fragment로 화면을 분할하여 구성하여 복잡도를 낮추면서 다른 Activity에서 재활용까지 할 수 있다. 이번 주제에서는 프래그먼트 세 개를 교체하는 액티비티를 구현 해 보겠다. - activity_main.xml 작성 ConstraintLayout을 활용하여 Activity의 상단에 세 개의 버튼을 나란히 두고 그 아래에 Fragment를 담을 컨테이너로 FrameLayout을 두었다. 복잡한 것은 없으니.. 2020. 5. 11.
[프로그래머스] 코딩테스트 고득점 Kit > 쇠막대기 # 문제 # 문제 접근 문제만 봤을 때 굉장히 복잡할 것 같다고 느낀 문제였다. 우선 괄호로 이루어진 입력이 보기가 쉽지 않았다. 중요한 것은 "()" 모양으로 된 것은 레이저 라는 것이다. 그래서 ()를 레이저(R)로 표시한 후 생각하였다. 예시의 입력은 R(((RR)(R)R))(R) 로 바뀌게 된다. 막대기가 하나 완성이 되기 위해선 "(" 과 ")" 가 필요하다. 괄호 쌍을 맞추는 알고리즘 문제를 풀어 본 적이 있는가? 이와 유사하다. 스택에 "("를 만나면 쌓고, ")"를 만나면 스택으로 부터 pop 하여 쌍을 맞추게 되는 것이다. 그럼 R을 만났을 땐 어떻게 할 것인가? "("가 스택에 쌓였다는 것은 막대기가 하나 생성되었다는 것을 의미한다. "("가 N개 스택에 쌓였다는 것은 막대기가 N개 생.. 2020. 3. 18.
[프로그래머스] 코딩테스트 고득점 Kit > 주식가격 # 문제 # 문제 접근 가격이 떨어지지 않았다는 것은 배열의 한 시점을 기준으로 뒤로 갈 수록 현재 시점보다 가격이 낮은 순간이 있는지를 판단하면 된다. 주의할 부분은, 3초 시점의 3은 바로 다음의 4초에 2로 떨어졌으나, 1초 간 가격이 유지 된 것으로 판단하여 떨어지지 않은 것으로 본다는 것이다. 바로 다음 시점에 가격이 떨어져도 1초간 가격은 유지가 된 것이다. # 문제 풀이 1. 배열의 처음부터 끝까지 루프를 돌린다. (i) 2. 현재 배열의 위치부터 다음 위치까지 루프를 돌린다. (j) 3. 인덱스 j가 증가하면 현재 시점의 카운트를 1 늘린다.(위에서 주의했듯이 바로 다음 순간에 떨어져도 1초간 가격이 유지 된 것이기 때문.) 4. 배열의 i 인덱스의 값이 배열의 j 인덱스 값보다 크면 시점.. 2020. 3. 18.
반응형