flutter
에서 화면 크기를 얻기위해 MediaQuery
클래스 사용
MediaQuery
클래스에는 화면 크기 외에도 여러가지 기기의 시스템 정보들을 담고있다.(텍스트 배율, 24시간 포맷 유무, 기기 방향(orientation)등등)
MediaQuery.of(context).size //앱 화면 크기 size Ex> Size(360.0, 692.0)
MediaQuery.of(context).size.height //앱 화면 높이 double Ex> 692.0
MediaQuery.of(context).size.width //앱 화면 넓이 double Ex> 360.0
MediaQuery.of(context).devicePixelRatio //화면 배율 double Ex> 4.0
MediaQuery.of(context).padding.top //상단 상태 표시줄 높이 double Ex> 24.0
위의 값들은 실제 픽셀 값이 아닌 논리적 픽셀 값이므로 실제 픽셀 값을 구하려면 화면 배율을 곱하면됨
ex)
MediaQuery.of(context).size.width * MediaQuery.of(context).devicePixelRatio//화면 너비의 실제 픽셀 값
AssetImage
를 사용하여 이미지를 출력할때 fit
속성을 통하여 이미지 크기 및 비율을 조절
ex)
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage(image),
fit: BoxFit.fitWidth,
),
),
참조
하이제니스
Totally개발자