[flutter] cupertino_icons를 사용하여 아이콘 클릭 이벤트 설정하기

Flutter는 다양한 아이콘을 사용할 수 있도록 cupertino_icons 패키지를 제공합니다. 이 패키지를 사용하면 iOS 스타일의 아이콘을 쉽게 추가할 수 있습니다. 하지만 이 아이콘을 클릭할 때 어떤 작업을 수행하려면 어떻게 해야 할까요? 이번 블로그 포스트에서는 cupertino_icons를 사용하여 아이콘 클릭 이벤트를 설정하는 방법을 알아보겠습니다.

1. cupertino_icons 패키지 추가하기

먼저, pubspec.yaml 파일에 cupertino_icons 패키지를 추가합니다. 이 패키지는 기본으로 Flutter 프로젝트에 포함되어 있으므로 따로 설치하지 않아도 됩니다.

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.2

pubspec.yaml 파일을 저장한 후에는 패키지를 가져와야 합니다. 터미널에서 다음 명령어를 실행하여 패키지를 가져오세요.

$ flutter pub get

2. 아이콘 위젯 추가하기

이제 아이콘을 화면에 추가해보겠습니다. 예를 들어, CupertinoIcons.heart 아이콘을 사용하고자 한다면 다음과 같이 작성할 수 있습니다.

import 'package:flutter/cupertino.dart';

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
      navigationBar: CupertinoNavigationBar(
        middle: Text('My App'),
      ),
      child: Center(
        child: GestureDetector(
          onTap: () {
            // 아이콘 클릭 이벤트가 발생했을 때 수행할 작업
            print('아이콘 클릭!');
          },
          child: Icon(
            CupertinoIcons.heart,
            size: 50,
          ),
        ),
      ),
    );
  }
}

위의 코드에서 GestureDetector 위젯을 사용하여 아이콘을 감싸고, onTap 속성을 사용하여 클릭 이벤트를 설정하였습니다. 이제 해당 아이콘을 클릭하면 ‘아이콘 클릭!’이라고 출력될 것입니다.

3. 추가적인 작업 설정하기

위에서는 간단한 출력문만을 작성하였지만, 실제 앱에서는 더 많은 작업을 수행해야 할 수 있습니다. 예를 들어, 다른 페이지로 이동하거나 특정 함수를 호출하는 등의 작업을 수행할 수 있습니다. 이는 onTap 속성에 원하는 동작을 작성함으로써 구현할 수 있습니다.

onTap: () {
  Navigator.push(
    context,
    CupertinoPageRoute(builder: (context) => SecondPage()),
  );
},

위의 코드는 Navigator.push를 사용하여 새로운 페이지로 이동하는 예시입니다. builder 속성에는 이동할 페이지를 작성하면 됩니다. 이 외에도 여러가지 작업을 수행할 수 있으니 필요에 따라 적절히 사용하시면 됩니다.

마무리

이제 cupertino_icons를 사용하여 아이콘 클릭 이벤트를 설정하는 방법을 알아보았습니다. Flutter에서는 cupertino_icons를 통해 iOS 스타일의 아이콘을 쉽게 사용할 수 있으며, 클릭 이벤트를 설정하여 다양한 작업을 수행할 수 있습니다.

이번 포스트가 도움이 되었기를 바랍니다. 감사합니다!