[flutter] 플러터(IndexedStack)에서 각 인덱스에 대한 전환 액션을 추가하는 방법은 무엇인가요?

플러터에서 IndexedStack 위젯은 여러 개의 자식 위젯 중 하나만 보여줄 수 있는 위젯입니다. 이때 각 인덱스에 대한 전환 액션을 추가하려면 다음과 같은 방법을 사용할 수 있습니다.

  1. IndexedStack을 사용할 StatefulWidget을 생성합니다.
    class MyIndexedStack extends StatefulWidget {
      @override
      _MyIndexedStackState createState() => _MyIndexedStackState();
    }
    
  2. _MyIndexedStackState 클래스를 생성합니다. ```dart class _MyIndexedStackState extends State { int currentIndex = 0;

@override Widget build(BuildContext context) { return Column( children: [ // 인덱스에 따라 보여줄 버튼들을 생성합니다. Row( mainAxisAlignment: MainAxisAlignment.center, children: [ FlatButton( onPressed: () { setState(() { currentIndex = 0; }); }, child: Text(‘인덱스 0’), ), FlatButton( onPressed: () { setState(() { currentIndex = 1; }); }, child: Text(‘인덱스 1’), ), FlatButton( onPressed: () { setState(() { currentIndex = 2; }); }, child: Text(‘인덱스 2’), ), ], ),

    // IndexedStack을 사용하여 여러 개의 자식 위젯 중 하나만 보여줍니다.
    IndexedStack(
      index: currentIndex,
      children: [
        Container(
          // 인덱스 0에서 보여줄 위젯
        ),
        Container(
          // 인덱스 1에서 보여줄 위젯
        ),
        Container(
          // 인덱스 2에서 보여줄 위젯
        ),
      ],
    ),
  ],
);   } } ```
  1. 위젯을 사용하기 위해 해당 StatefulWidget을 호출합니다.
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
     return MaterialApp(
       home: Scaffold(
         body: MyIndexedStack(),
       ),
     );
      }
    }
    

위와 같이 구현하면 각 버튼을 클릭할 때마다 IndexedStack 위젯의 인덱스가 변경되어 해당 인덱스에 맞는 위젯이 보여지게 됩니다. 이를 통해 각 인덱스에 대한 전환 액션을 추가할 수 있습니다.

더 자세한 내용은 플러터 공식 문서를 참고하시면 도움이 될 것입니다.