반응형
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
- Three js
- Babel standalone
- REST API
- swagger-typescript-api
- androidId
- Image Resize typescript
- Flutter
- web track
- Raycasting
- node
- Redux
- typescript
- Excel
- KakaoMap
- Prism.js
- Completer
- methodChannel
- uint16array
- react
- uint8array
- code editor
- userevent_tracker
- babel
- three.js
- RouteObserver
- webrtc
- Three-fiber
- Game js
- identifierForVender
- jszip
Archives
- Today
- Total
Never give up
Flutter - Loop PageView 본문
반응형
PageView를 쓸 때 Loop가 되도록 만들고 싶을 때가 있습니다
그래서 관련 패키지와 stackoverflow같은곳을 찾아보니 거의 다
본문과 같은 방식으로 처리를 했더군요
동일하다면 굳이 패키지를 사용하지 않고 구현하는게 좋지 않을까 해서
이번 예제를 만들어봤습니다
import 'package:flutter/material.dart';
class LoopPageView extends StatefulWidget {
final String title;
LoopPageView(this.title);
@override
_LoopPageViewState createState() => _LoopPageViewState();
}
class _LoopPageViewState extends State<LoopPageView> {
PageController _controller = PageController(initialPage: 500);
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: PageView.builder(
controller: _controller,
itemBuilder: (_, index) {
return Center(
child: Text('Page - ${index % 5}',
style: TextStyle(
color: (index % 5 == 0) ? Colors.blue : Colors.black,
fontSize: 20)));
}),
);
}
}
간단한 예제인데 주목해야될 부분은 controller의 initialPage값
그리고 itemCount값을 주지 않은것 그리고 index처리 부분을 보시면 됩니다
itemCount에 아무런 값을 넣지않으면 거의 무한으로 index가 할당이 되고
index % value를 이용해서 원하는 만큼의 범위를 지정해줍니다
그리고 마지막으로 controller의 init값에 조금 높은값을 줘서
0에서 마지막 index로 이동할 수 있도록 해주면 됩니다
반응형
'Flutter' 카테고리의 다른 글
Flutter 2.0 - typedef callback with ScaffoldMessenger Widget, global key (0) | 2021.05.08 |
---|---|
Flutter - FCM device to device, device to all devices (3) | 2021.04.24 |
Flutter 2.0 - Hive fixed length list problem and solution (2) | 2021.03.31 |
Flutter - ListView inside ListView with shrinkwrap (3) | 2021.03.28 |
Flutter 2.0 - ButtonStyle (feat. Deprecated Buttons) (0) | 2021.03.06 |
Comments