inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Flutter 앱 개발 기초

온보딩 화면 만들기

ListView.Builder 에서 질문이 있습니다.

해결된 질문

106

지니

작성한 질문수 6

1

ListView.Builder에서 Map 데이터를 사용을 할때

final List<Map<String, String>> menu = const [

{

"ko": "추천",

"en": "Recommend",

"imgUrl": "https://i.ibb.co/SwGPpzR/9200000003687-20211118142543832.jpg",

},

{

"ko": "리저브 에스프레소",

"en": "Reserve Espresso",

"imgUrl": "https://i.ibb.co/JHVXZ72/9200000003690-20211118142702357.jpg",

},

{

"ko": "리저브 드립",

"en": "Reserve Drip",

"imgUrl": "https://i.ibb.co/M91G17c/9200000003693-20211118142933650.jpg",

},

{

"ko": "콜드브루",

"en": "ColdBrew",

"imgUrl": "https://i.ibb.co/jyZK4C9/9200000003696-20211118143125337.jpg",

},

];

final item = menu[index % menu.length];

이부분이 이해가 안갑니다.

자세한 설명좀 부탁드리겠습니다~

flutter

답변 1

1

DevStory

안녕하세요.

Dart에서 5 % 3는 5를 3으로 나눈 나머지이므로 2가 반환됩니다. index % menu.length이라고 하면 index를 menu 배열의 길이로 나눈 나머지로 항상 배열의 개수보다 작은 값이 반환됩니다.

따라서 배열의 원소 개수가 5개인 경우 index가 5 이상인 경우 out of index 에러가 발생하지만, 위와 같이 index % menu.length를 사용하시면 항상 4이하의 값만 반환되므로 index가 아무리 커도 out of index 문제가 발생하지 않으며 배열을 순환하는 효과를 구현할 수 있습니다.

감사합니다 :)

회차마다 있는 실습

1

38

2

user-not-found, wrong-password 코드가 더 이상 반환되지 않습니다

1

70

2

SharedPreferences prefs 초기화 시기 문제

1

84

2

index로 삭제하게 되면, index가 고정되어 있으니 문제가 발생하지 않나요?

1

62

2

API 사이트가 안되네요

1

77

2

잘 되다가 sharedPreferences부터 에러

1

63

2

기존의 프로젝트

1

63

2

I/O라는 창이 윈도우에서는 없어요

1

61

2

수강 기간 연장 부탁드립니다.

1

59

2

설정 질문

1

55

2

수강 기간 연장 신청 요청드립니다.

1

49

2

수강기간 연장 부탁드립니다.

1

54

2

수강기간 연장 부탁드립니다.

1

55

2

수강기간 연장 부탁 드립니다.^^

1

66

3

강의계획 문의

1

63

2

안녕하세요. 강의 연장 문의드립니다..

1

72

2

수강기간 연장 부탁드립니다!

1

78

2

2회차 StatefulWidget 예제 dartpad 코드와 영상에서의 코드가 다릅니다.

2

95

2

dartpad 에러

1

103

2

cmd에 flutter doctor 입력하면 바로 튕겨버립니다...

1

108

2

애뮬레이터 실행시 무한로딩

1

132

2

저는 강사님 처럼 화면이 안뜨는데 머테리얼 버전이 다른걸까요??

1

64

2

수강기간 연장 부탁드립니다!

1

58

2

수강기간 연장 부탁드립니다.

1

68

2