반응형
왼쪽과 같은 상황에서 table row의 요소가 화면을 나가버리는 일이 생겼다.
edit text를 아래 table row에 넣을 경우 똑같이 화면을 나가버린다. 지금 parent view가 linear layout 에 width match parent인데도 이런 상황이다.
이런 버그가 일어나는 이유는 TableLayout의 기본 width setting이 wrap_content이기 때문이다. wrap_content가 그냥 위젯 크기를 감싼다는 이야기지, 위젯이 화면밖에서 벗어나지 않도록 해준다는 이야기가 아니기 때문이다.
다시 말해 고정크기가 잡히지 않아서인데, 이때 각 요소별로 weight 을 줘서 비중을 설정해주면 말끔하게 해결된다.
Tablerow의 요소는 width, height를 따로 써주지 않아도 되지만 weight를 사용할 방향이 row이기 때문에 각 button의 width를 0dp로 해주는 것도 좋아보인다.
https://stackoverflow.com/questions/68523559/tablelayout-elements-are-not-centered-and-go-off-screen
"댓글, 공감 버튼 한 번씩 누르고 가주시면 큰 힘이 됩니다"
반응형