본문 바로가기

프로그래밍245

[Android] 스크롤시 상단바 숨기기, CoordinatorLayout 앱들을 사용하다 보면 스크롤할 때나 상단에 검색 툴바, 하단의 바가 사라질 때가 있고 나타날 때가 있다. 이러한 효과를 사용해보기 위함도 있고 코드본을 가지고 있기 위해 구현해 보았다. CoordinatorLayout 먼저 숨김처리 효과를 구현하기 위해 CoordinatorLayout을 사용해야 한다. CoordinatorLayout의 Behavior를 통해 자식 뷰들 간에 상호작용을 제공한다. 이 Layout을 이용하면 자식 뷰들을 드래그하여 움직이는 것도 가능하고 패널을 스와이프 해 지우기 또는 애니메이션 적용 등 다양한 기능을 활용할 수 있다고 한다. AppBarLayout LinearLayout을 상속한 스크롤 제스처에 몇 가지 동작을 할 수 있다. 이 레이아웃은 자식으로 ToolBar를 지니고 .. 2023. 4. 18.
[Android] TableLayout TableLayout(테이블 레이아웃)은 뷰를 격자 형태로 배치한다. 여러 개의 뷰를 동일한 크기로 배치해야할 때 유용하게 사용할 수 있다. 다른 레이아웃들이 ViewGroup을 상속받는 것과 달리, TableLayout은 LinearLayout을 상속받는 레이아웃이다. 사용 방법 격자의 가장 바깥쪽 가장자리에 해당하는 부분을 TableLayout 태그로 감싼다. 테이블에 들어가는 한 줄에 해당하는 row는 TableRow 태그로 감싼다. TableRow 내부에 가로 방향으로 추가하고 싶은 뷰를 하나씩 추가하면 된다. 이렇게 추가된 뷰 하나 하나가 column의 역할을 한다. 아래는 버튼을 3x2 크기로 배치하는 예제 코드이다. 3개의 column을 가지는 2개의 row가 생기는 것을 알 수 있다. 테이.. 2023. 4. 17.
[Android] Dialog 중복생성 방지 현재 해당 방법은 Deprecate 되었다! 가급적이면 다른 방법을 사용하는게 나을듯 Dialog를 생성할 때, 아래와 같이 AlertDialog 클래스를 이용하여 많이 생성한다. AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setMessage("message:); dialog.setView(view); dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int button) { dialog.dismiss(); finish(); } }); dialog.s.. 2023. 4. 14.
[Java] String to JsonArray 변환 String에 json형태의 문자열을 만들어준다. String s = "[{\"addr\":\"전남\"},{\"addr\":\"전북\"},{\"addr\":\"대구\"},"+ "{\"addr\":\"대전\"},{\"addr\":\"경기\"},{\"addr\":\"충북\"},"+ "{\"addr\":\"인천\"},{\"addr\":\"부산\"},{\"addr\":\"울릉\"},"+ "{\"addr\":\"청주\"},{\"addr\":\"충남\"},{\"addr\":\"제주\"},{\"addr\":\"서울\"}]"; 이렇게 들어온 String를 JsonArray형태로 바꿔주는 것 또한 간단하다. -> 즉! JSONArray("JSONArray로 변환할 String"); 이부분만 있으면 JSONArray로 변.. 2023. 4. 13.