Cupertino Widgets: Building iOS-Style Apps

Cupertino Widgets: Building iOS-Style Apps in Flutter


Flutter  Course provides two sets of widgets: Material Design (for Android-like apps) and Cupertino (for iOS-style apps). Cupertino widgets allow developers to create applications that follow Apple’s design guidelines, ensuring a native iOS look and feel.


Why Use Cupertino Widgets?

Provides an iOS-native user experience.


Ensures consistency with Apple’s Human Interface Guidelines.


Works seamlessly with Flutter’s cross-platform capabilities.


Common Cupertino Widgets

1. CupertinoApp

Acts as the root widget for an iOS-styled app. Equivalent to MaterialApp in Flutter.


dart

Copy

Edit

import 'package:flutter/cupertino.dart';


void main() {

  runApp(CupertinoApp(

    home: CupertinoPageScaffold(

      navigationBar: CupertinoNavigationBar(

        middle: Text('Home'),

      ),

      child: Center(child: Text('Welcome to iOS-style App')),

    ),

  ));

}

2. CupertinoPageScaffold

A basic page layout with a navigation bar and a content area.


3. CupertinoNavigationBar

An iOS-style navigation bar.


4. CupertinoButton

A button styled to match iOS design.


dart

Copy

Edit

CupertinoButton(

  child: Text("Press Me"),

  onPressed: () {},

)

5. CupertinoTextField

An input field with iOS aesthetics.


dart

Copy

Edit

CupertinoTextField(

  placeholder: 'Enter text',

)

6. CupertinoPicker

An iOS-style scroll picker.


dart

Copy

Edit

CupertinoPicker(

  itemExtent: 32.0,

  onSelectedItemChanged: (int index) {},

  children: List.generate(10, (index) => Text('Item $index')),

)

Using Cupertino Widgets in a Cross-Platform App

Flutter allows you to use Cupertino widgets selectively for iOS and Material widgets for Android:


dart

Copy

Edit

import 'dart:io';

import 'package:flutter/material.dart';

import 'package:flutter/cupertino.dart';


Widget build(BuildContext context) {

  return Platform.isIOS

      ? CupertinoButton(child: Text('iOS Button'), onPressed: () {})

      : ElevatedButton(child: Text('Android Button'), onPressed: () {});

}

Conclusion

Cupertino widgets are essential for Flutter developers targeting iOS users. They provide a native look and feel while maintaining the flexibility of a cross-platform framework. 

READ MORE

GET DIRECTIONS

Comments

Popular posts from this blog

How to Repurpose Old Content for Better Engagement

Introduction to AWS for Data Science Beginners

Why Learn Full Stack Java?