inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

GetX 기반 Flutter 앱 만들기

네비게이션바 만들기

onChangeNavBar 질문

해결된 질문

286

오리

작성한 질문수 3

0

7:07에서

 

bottomNavigationBar 의 속성으로

onDestinationSelected: controller.onChangeNavBar를 했는데,

 

onChangeNaveBar 의 파라미터인 idx는 어떻게 전달이 되는건가요?

flutter getx

답변 1

0

Sirius B

안녕하세요!

onDestinationSelected: controller.onChangeNavBar 를 직관적으로 풀어서 작성해볼게요 :)

  1. 직관적인 표현

onDestinationSelected: (int idx) {
controller.onChangeNavBar(idx);
}

원래 형태는 위와 같습니다.

onDestinationSelected 에는 int 값에 대한 파라미터가 1개 존재해요.

(int idx) {} 부분이 Function 이기 때문에,
같은 형태의 Function 인 onChangeNavBar(idx) 를
마치 변수처럼 onChangeNavBar 로 넣어주게 되면
메소드의 파라미터가 그대로 대입되어 사용할 수 있게 됩니다.

  1. 간단한 표현

onDestinationSelected: controller.onChangeNavBar

그래서 1번과 2번은 완전히 동일하게 작동할 수 있어요.


마찬가지로 더 많은 파라미터를 가진 메소드를 이용할 때도 같은 원리로 사용할 수 있어요.
아래 추가 예시에서도 ExamWidget 을 표현한 2가지 방식 모두 완전히 동일하게 실행되게 됩니다.

  • 추가 예시

    void onExam(int p1, bool p2, String p3) {
    print('$p1, $p2, $p3');
    }

    ExamWidget(
    onExamEvent: onExam
    )
    // 또는
    ExamWidget(
    onExamEvent: (int p1, bool p2, String p3) {
    onExam(p1, p2, p3);
    }
    )

또 다른 질문이 있으면 다시 남겨주세요 😀

감사합니다!

Node 관련 질문입니다

0

21

3

구글 소셜 로그인 후 로그인 시 구글에러

0

25

2

실습중(개인 비용 관리 앱) 문의드려요

0

41

2

6강에 비디오가 이상해요

0

20

1

Isar 마지막 업데이트는 2년전입니다.

0

28

0

Chat GPT API 설정하기 프롬프트

0

45

2

FlutterSecureStorage 질문

0

27

0

구글 플레이 등록 시, Privact Policy URL 등록 팁

0

39

1

질문있습니다!

0

17

0

2-8강 Websocket server running on port가 안 뜹니다.

0

40

2

video_call 플러그인 설치후 에러 발생

0

42

1

회차마다 있는 실습

1

38

2

계정 관련 문의

0

47

2

구글 플레이스토어 배포시 테스트 요건

1

68

2

수강 기한 연장 요청드려도될까요..

1

48

2

화면이 안 나옵니다. 소리만 나와요

0

54

2

추가 강의 문의

0

48

1

vs code IDE

0

77

2

model, viewmodel

0

160

1

material theme

0

199

1

PageTransition 적용 후 뷰 적용 되지 않는 문제가 있습니다.

0

196

1

강의자료는 어디서 다운 받나요?

0

385

2

route의 pages

0

558

3

라우트 명은 어떻게 지정하나요?

0

363

1