반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- nestjs
- 스프링부트공부
- 플러터 공부
- JPA스터디
- 프로그래머스
- 스프링공부
- 카프카
- DDD
- 알고리즘공부
- nestjs스터디
- nestjs공부
- JPA공부
- JPA 공부
- JPA예제
- 코테준비
- querydsl
- 스프링
- Kafka
- 자바공부
- K8S
- Flutter
- 스프링 공부
- Axon framework
- 기술면접공부
- 기술공부
- 코테공부
- 플러터 개발
- 자료구조공부
- JPA
- 스프링부트
Archives
- Today
- Total
DevBoi
[Flutter] textformfield 클릭시 화면이 리스트를 가리는 현상 본문
반응형
흔히 말하는 키보드영역때문에 화면이 가리는 것이다.
가려진 화면만큼 이동하는게 아니라 키보드가 고정처럼 붙어버려서
입력창을 클릭하면 화면이 가려져서 아래와 같이 해결했다.
우선 입력하는 위젯을 크게 scrollview로 감싸줬다.
SingleChildScrollView(
child: NewMessages2(
roomId: widget.chatResponse.id.toString(),
userId: userProvider.userInfo.id.toString(),
userName: userProvider.userInfo.name,
),
)
사실 이렇게 해도 되지만 해당 위젯의 build 최상위에
아래와 같은 부분도 추가해줬다. 해당 부분을 추가해야지 키보드가 올라왔을때 화면을 밀어준다.
@override
Widget build(BuildContext context) {
mediaQueryData = MediaQuery.of(context);
return SafeArea(
child: GestureDetector(
onTap: () {
FocusScope.of(context).unfocus();
},
child: Scaffold(
backgroundColor: appTheme.gray5002,
resizeToAvoidBottomInset: true,
unfocus는 텍스트 폼이 포커스되었을때 밖부분을 클릭하면 포커스를 해제하도록 하는 메소드이다.
textformfield를 쓰면 거의 필수이다.(이게 좀 번거롭다)
무튼 키보드 관련 화면 가림 이슈가 있으면
SingleScrollview + Scaffold에 resize설정을 추가해주면된다.
추가로 bottomnavigationbar에 대한 기본 설정에 위젯을 쓰게 되면 이 옵션이든 뭐든 안먹는데
이건 아직 플러터 이슈라서 고치기 전인것같다.
그래서 그냥 Column으로 위젯들을 정의하고 사용해야한다
반응형
'[Mobile] > [Flutter]' 카테고리의 다른 글
[Flutter] StreamBuilder State redraw 이슈 (0) | 2024.01.17 |
---|---|
[flutter] 앱에 광고 달기 (1) | 2023.12.30 |
[Flutter] Icon launcher 사용하기 (0) | 2023.12.19 |
[Flutter] IOS 애플 로그인, 회원탈퇴 (0) | 2023.12.16 |
[Flutter] Rendering Object 오류 (0) | 2023.11.27 |