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 |
31 |
Tags
- signout
- ListView.builder
- snackbar
- 문법
- enum
- runTransaction
- Firebase
- controller
- Camera
- swift 문법
- user
- multiprovider
- Stream
- globalkey
- provider
- reference
- borderRadius
- changenotifierprovider
- transform
- setstate
- switch
- permission
- Snapshot
- changenotifier
- Navigator
- consumer
- Swift
- datetime
- platformexception
- divider
Archives
- Today
- Total
코딩하는 제리
[Flutter/Project](Instagram Clone) 온라인 이미지 불러오기 본문
Flutter/Project_InstaClone(완)
[Flutter/Project](Instagram Clone) 온라인 이미지 불러오기
JerryCho 2021. 1. 18. 15:01
fit: BoxFit.???
fill : 가로, 세로 비율 상관 없이 이미지를 늘려서(줄여서)박스를 꽉 채움
contain : 가로, 세로 비율을 유지하면서 박스 사이즈에 맞게 가능한 크게
cover : 박스 사이즈에 맞게 이미지를 자르더라도 꽉 채움
fitWidth : 박스의 가로 사이즈에만 맞게 채움. 세로가 좁으면 이미지를 자름
fitHeight : 박스의 세로 사이즈에만 맞게 채움. 가로가 좁으면 이미지를 자름
none : 이미지의 원본을 유지함. 기본적으로 가운데 정렬. 이미지 사이즈보다 박스가 작으면 이미지를 잘라냄
scaleDown : 이미지 원본 크기를 유지하지만 박스의 크기가 작아지면 사이즈를 줄임. none+contain
소스코드 및 pubspec.yaml
dependencies:
cached_network_image: ^2.5.0
//post.dart
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
class Post extends StatelessWidget {
// final : 한번 데이터가 저장되면 바뀌지 않음.
final int index;
const Post(
this.index, {
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return CachedNetworkImage(
// CachedNetworkImage() 받아온 이미지를 캐시파일로 저장해 재사용.
imageUrl: "https://picsum.photos/id/$index/200/200",
imageBuilder: (BuildContext context, ImageProvider imageProvider) {
return AspectRatio(
aspectRatio: 16/9/* 16대 9의 비율로 이미지 생성 */,
child: Container(
decoration: BoxDecoration(
image: DecorationImage(
image: imageProvider/* CachedNetworkImage 의 imageUrl */,
fit: BoxFit.cover,
),
),
),
);
},
);
}
}
'Flutter > Project_InstaClone(완)' 카테고리의 다른 글
[Flutter/Project](Instagram Clone) 커스텀 로딩 위젯 (0) | 2021.01.18 |
---|---|
[Flutter/Project](Instagram Clone) 로딩 위젯 생성 (0) | 2021.01.18 |
[Flutter/Project](Instagram Clone) appBar 및 아이콘 (0) | 2021.01.16 |
[Flutter/Project](Instagram Clone) ListView.builder() (0) | 2021.01.16 |
[Flutter/Project](Instagram Clone) theme: ThemeData() (0) | 2021.01.16 |
Comments