Eric Windmill Foreword by Ray Rischpater
MANNING
Widget Lifecycles
Stateless widget
Stateful widget
Constructor
Constructor
build()
createState()
Rebuilds when configuration changes
Produces a state object
State object (Mounted)
initState()
(Dirty state)
widgetDidUpdate()
When it receives new configuration
build()
(Clean state)
dispose()
setState()
When internal state changes
Flutter in Action
ERIC WINDMILL FOREWORD BY RAY RISCHPATER
MANNING SHELTER ISLAND
For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact Special Sales Department Manning Publications Co. 20 Baldwin Road PO Box 761 Shelter Island, NY 11964 Email:
[email protected] ©2020 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher.
Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15 percent recycled and processed without the use of elemental chlorine.
Acquisitions editor: Manning Publications Co. Development editor: 20 Baldwin Road Technical development editor: PO Box 761 Review editor: Shelter Island, NY 11964 Production editor: Copyeditor: Proofreader: Technical proofreader: Typesetter: Cover designer:
ISBN 9781617296147 Printed in the United States of America
Brian Sawyer Susanna Kline John Guthrie Aleks Dragosavljevic´ Anthony Calcara Tiffany Taylor and Frances Buran Melody Dolab Gonzalo Huerta-Cánepa Gordan Salinovic Marija Tudor
brief contents PART 1 MEET FLUTTER ................................................................1 1 2 3
■ ■ ■
Meet Flutter 3 A brief intro to Dart 24 Breaking into Flutter 54
PART 2 FLUTTER USER INTERACTION, STYLES, AND ANIMATIONS .........95 4 5 6
■ ■ ■
Flutter UI: Important widgets, themes, and layout 97 User interaction: Forms and gestures 129 Pushing pixels: Flutter animations and using the canvas 158
PART 3 STATE MANAGEMENT AND ASYNCHRONOUS DART ........