본문 바로가기
개인 프로젝트/운동일지 App

[Kotlin] 운동 일지 App 개발일지#02

by 왕큰새 2022. 1. 27.
728x90

 

 

운동 추가하기 화면을 만들었다. 

기존에 등록해놓은 운동을 선택할 수도 있고,
운동 이름을 직접 입력하여 운동을 추가할수도 있다.

Spinner로 보이는 항목들은 
TextView인데, Spinner처럼 xml에서 style을 지정해준것이다.


"운동을 선택하세요"라는
스피너를 누르면 나타나는 BottomSheet이다. 

운동 이름을 입력하면 ListView에 등록한 Adpater의 filter로
운동을 검색할 수 있다.

 
 
BottomSheet에 EditText를 넣으니,
키보드가 LIstView를 가리
게 되어서 이 방법은
좋지 않은 방법 인 것같다.

스피너 밑에 화면을 띄우는 방식으로 변경하던지, 
keyborad의 크기만큼 위로 올려주는 방식을 택해야 할 것 같다.

 

 세트 개수를 선택하세요 스피너를 누르면 나타나는
 BottomSheet이다. ListVIew로 이루어져 있다.

 여기서 문제가 발생했는데, Listview에서 Scroll Up을 하면
 Bottom Sheet의 ListView가 Scroll Up이 되는 것이 아니고,
 Bottom Sheet를 닫아버리는 문제가 발생하였다.




 

 

이 문제는 Bottom Sheet를 구성하는 Layout의 ListView 옵션에 

android:nestedScrollingEnabled = "true"를 주면 Scroll Up이

ListView 안에서 진행되는 것을 확인할 수 있다.

 

    <ListView
        android:id="@+id/listView"
        android:textAlignment="center"
        android:layout_weight="1"
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:nestedScrollingEnabled="true"
        android:layout_height="300dp"
        />