0% found this document useful (0 votes)
52 views

100 Flutter Interview Questions and Answers 1732082001

Uploaded by

annadurai_r_s
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

100 Flutter Interview Questions and Answers 1732082001

Uploaded by

annadurai_r_s
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

100 Flutter Interview Questions and Answers

1. What is Flutter?

Flutter is an open-source UI software development toolkit created by Google for building


natively compiled applications for mobile, web, and desktop from a single codebase.

2. What are Widgets in Flutter?

Widgets are the building blocks of a Flutter app’s user interface. Everything in Flutter is
a widget.

3. What is the difference between StatefulWidget and StatelessWidget?

 StatelessWidget: A widget that doesn’t change its state over time.


 StatefulWidget: A widget that maintains state and can rebuild when the state
changes.

4. Explain the concept of State in Flutter.

State refers to the information that can change within a widget and triggers re-rendering
to reflect those changes in the UI.

5. What is the role of BuildContext in Flutter?

BuildContext is a handle to the location of a widget in the widget tree. It allows access to
theme, size, and ancestor widgets.

6. What are Keys in Flutter?

Keys are used to preserve the state of widgets in scenarios like moving widgets within a
list or managing the order of dynamic lists.

7. What is setState() in Flutter?

setState() is a method used in StatefulWidget to trigger a UI update after modifying the


widget's state.

8. What is InheritedWidget and when would you use it?

InheritedWidget is used to pass data down the widget tree without needing to pass it
explicitly through the constructor of every widget.

9. Explain how routing works in Flutter.

Routing in Flutter is managed by the Navigator class, which manages a stack of routes.
The push method adds a route to the stack, and the pop method removes it.
100 Flutter Interview Questions and Answers

10. What are Navigator 1.0 and Navigator 2.0?

 Navigator 1.0: Traditional stack-based navigation.


 Navigator 2.0: Supports more complex routing, allowing you to manage the entire
stack manually with declarative navigation.

11. What is FutureBuilder in Flutter?

FutureBuilder is a widget that builds itself based on the latest snapshot of a Future,
useful for handling async data.

12. What is StreamBuilder in Flutter?

StreamBuilder is a widget that builds itself based on the latest snapshot of a stream of
data, typically used for real-time updates.

13. What is Scaffold in Flutter?

Scaffold provides the basic structure for a visual interface in Flutter, including app bars,
drawers, bottom sheets, and floating action buttons.

14. What is the difference between Expanded and Flexible in Flutter?

 Expanded: Forces a widget to take up the available space.


 Flexible: Allows a widget to take up space but lets it be flexible within the layout
constraints.

15. What is a ListView in Flutter?

ListView is a scrollable list of widgets that allows for the efficient display of large
datasets.

16. Explain the purpose of SafeArea in Flutter.

SafeArea is used to insert padding to avoid system UI elements like notches, status
bars, and home screen indicators.

17. What is ClipRect in Flutter?

ClipRect is a widget that clips its child to a rectangular area, used to prevent overflow
beyond a specific region.

18. What is a Hero widget in Flutter?

A Hero widget is used for creating shared element transitions between routes.
100 Flutter Interview Questions and Answers

19. What is a Spacer widget in Flutter?

Spacer takes up the available empty space between widgets, typically used in Row or
Column layouts.

20. What is GestureDetector?

GestureDetector is a widget that detects gestures such as taps, swipes, and drags on
the screen.

21. How do you handle JSON data in Flutter?

You can handle JSON data using Dart's built-in dart:convert library to parse JSON into
Dart objects and vice versa.

22. What are Constraints in Flutter layouts?

Constraints determine how large or small a widget can be in a layout. Every widget
must respect its constraints while laying out its children.

23. Explain Container in Flutter.

A Container is a versatile widget that can be used to apply padding, margins, borders,
or background color to its child.

24. What is the purpose of Padding in Flutter?

Padding adds empty space around its child widget to create spacing.

25. What are Providers in Flutter?

Provider is a popular state management solution in Flutter that allows you to share state
across your application easily.

26. What is the ChangeNotifier in Flutter?

ChangeNotifier is a class that helps notify listeners of changes in the state and is used
with Provider for state management.

27. What is Bloc in Flutter?

Bloc (Business Logic Component) is a pattern used for managing state in Flutter apps.
It separates presentation logic from business logic using streams.

28. What is Riverpod in Flutter?


100 Flutter Interview Questions and Answers

Riverpod is a state management package that improves on Provider, offering more


flexibility, testing, and better compile-time safety.

29. What is a ValueNotifier in Flutter?

A ValueNotifier is a special type of ChangeNotifier that holds a single value and notifies
its listeners when the value changes.

30. Explain hot reload vs hot restart in Flutter.

 Hot reload: Updates the code without losing the app's state.
 Hot restart: Restarts the app completely, losing the state.

31. What are Mixins in Flutter?

Mixins allow you to reuse a class’s code across multiple class hierarchies by mixing in
behavior.

32. How does the RenderObject work in Flutter?

RenderObject is the base class in Flutter’s rendering pipeline, responsible for layout,
painting, and hit-testing of the UI.

33. What is the build() method in Flutter?

The build() method describes the widget structure and is called every time a widget
rebuilds.

34. Explain InheritedWidget.

InheritedWidget is used to pass data down the widget tree to child widgets, making data
accessible without passing it through constructor parameters.

35. What is EdgeInsets in Flutter?

EdgeInsets is used to define padding or margin for widgets.

36. What is a MaterialApp in Flutter?

MaterialApp is the top-level widget for building apps that follow Material Design
guidelines.

37. What is Cupertino in Flutter?


100 Flutter Interview Questions and Answers

Cupertino is a widget library in Flutter that provides iOS-style widgets for building apps
that look and feel native on iOS.

38. Explain the difference between Material and Cupertino widgets.

 Material: Follows Material Design, typically used for Android apps.


 Cupertino: Mimics the design of iOS applications, with a Cupertino theme.

39. What is ModalRoute in Flutter?

ModalRoute is used to display a route that blocks interaction with other routes until it's
closed.

40. What is WillPopScope?

WillPopScope is a widget that intercepts the back button press and allows you to control
what happens when a user attempts to leave a screen.

41. What is WillPopScope in Flutter?

WillPopScope is used to intercept the back button press event and allows you to define custom behavior
before a user leaves a screen.

42. What is the difference between Navigator.push and Navigator.pushReplacement?

 Navigator.push: Adds a new route to the navigation stack.

 Navigator.pushReplacement: Replaces the current route with a new one.

43. How do you implement animations in Flutter?

Animations in Flutter can be implemented using the AnimationController, Tween, and AnimatedBuilder
classes. Flutter also provides built-in animated widgets like AnimatedContainer, AnimatedOpacity, etc.

44. What is Tween in Flutter?

A Tween interpolates between the range of values (e.g., from 0 to 1) for animation purposes. It defines
how values change over time.

45. How do you optimize performance in Flutter applications?

Performance can be optimized by:

 Using const constructors where possible.

 Avoiding unnecessary rebuilds with the shouldRebuild method in ListView/GridView.

 Caching images and reducing widget tree depth.

 Profiling with Flutter DevTools.


100 Flutter Interview Questions and Answers

46. What is BuildContext?

BuildContext is a reference to the location of a widget in the widget tree. It allows you to access various
methods and properties, including theme, size, and parent widgets.

47. What is InheritedWidget in Flutter?

InheritedWidget is a base class that passes data down the widget tree without the need to pass it
through constructor parameters. It’s useful for state sharing.

48. What is RenderObject in Flutter?

A RenderObject is a low-level widget responsible for the layout, painting, hit testing, and other
rendering responsibilities.

49. What is Offstage in Flutter?

Offstage is a widget that allows you to hide its child widget from the screen without disposing of it,
making it invisible but still in memory.

50. What is the difference between mainAxisAlignment and crossAxisAlignment?

 mainAxisAlignment: Aligns children along the main axis (horizontal for Row, vertical for Column).

 crossAxisAlignment: Aligns children along the cross axis (vertical for Row, horizontal for
Column).

51. What is Stream in Flutter?

Stream is used to handle asynchronous sequences of data. It emits a sequence of events over time,
allowing real-time data processing.

52. What is StatefulBuilder?

StatefulBuilder is a widget that allows you to rebuild only part of a widget’s tree without rebuilding the
entire StatefulWidget.

53. What is CustomPaint in Flutter?

CustomPaint allows you to draw custom shapes, animations, and complex graphics on the screen using
the Canvas API.

54. How do you handle navigation in Flutter?

Navigation in Flutter is handled using the Navigator class with methods like push, pop,
pushReplacement, and declarative routing with Navigator 2.0.

55. What is the Hero widget?

The Hero widget allows you to create smooth transitions between two screens by sharing a common
element.
100 Flutter Interview Questions and Answers

56. What is the difference between AnimatedBuilder and AnimatedWidget?

 AnimatedBuilder: Provides flexibility to rebuild multiple widgets in the animation without


needing to create custom widgets.

 AnimatedWidget: A simpler way to animate only one widget by extending it.

57. What is the purpose of the Container widget?

Container is a convenience widget used to apply padding, margins, borders, alignment, and background
colors to its child.

58. How do you manage asynchronous operations in Flutter?

Asynchronous operations in Flutter are managed using Future, async, and await for single asynchronous
tasks and Stream for handling a sequence of asynchronous data.

59. What is Future in Flutter?

A Future represents a computation that doesn’t complete immediately and will provide a value or an
error later.

60. How do you create responsive layouts in Flutter?

Responsive layouts can be achieved using widgets like MediaQuery, LayoutBuilder, and Flexible to adapt
to different screen sizes.

61. What is RenderBox?

RenderBox is a class in Flutter responsible for the layout, painting, and hit testing of its box model
children.

62. What is FractionallySizedBox in Flutter?

FractionallySizedBox is a widget that sizes its child relative to its parent based on a fraction of the
available space.

63. What is a ListView.builder in Flutter?

ListView.builder creates a lazily built scrollable list, where items are built on-demand, making it efficient
for large lists.

64. What is the TextField widget in Flutter?

TextField is a widget used to receive text input from the user. It can be customized with controllers,
validation, styling, and more.

65. What is GlobalKey?

A GlobalKey provides a way to access and manipulate a widget’s state across different parts of the
widget tree.
100 Flutter Interview Questions and Answers

66. How does Flutter manage memory?

Flutter uses garbage collection to manage memory, releasing unused objects to free up memory.

67. What is ThemeData in Flutter?

ThemeData defines the visual theme of your Flutter app, including colors, font styles, icon themes, and
more.

68. What are Constraints in Flutter?

Constraints define the minimum and maximum dimensions for a widget, determining its allowable size
during the layout phase.

69. What is Scrollable in Flutter?

Scrollable is a widget that allows its children to scroll. It is the base class for scrollable views like ListView
and GridView.

70. What is ExpansionPanelList?

ExpansionPanelList is a widget that provides a list of panels that can expand and collapse to reveal
additional content.

71. What is a Form widget?

Form is a container for grouping multiple form fields together. It helps with validation and submitting
input fields.

72. How do you handle errors in Flutter?

Errors can be handled in Flutter using try-catch blocks for synchronous errors, onError for asynchronous
operations, and using FlutterError.onError for global error handling.

73. What is the purpose of GestureDetector in Flutter?

GestureDetector is used to capture and respond to various user gestures like taps, drags, swipes, and
pinches.

74. What is Draggable in Flutter?

Draggable is a widget that allows you to move items around the screen by dragging.

75. How do you create a modal bottom sheet in Flutter?

You can create a modal bottom sheet using the showModalBottomSheet function, which displays a
sheet that appears from the bottom of the screen.

76. How do you update the state of a widget without rebuilding the entire tree?

You can update the state of a widget using setState() inside StatefulWidget to trigger a rebuild of only
the affected widget.
100 Flutter Interview Questions and Answers

77. What is Stack in Flutter?

Stack is a widget that allows its children to be layered on top of each other, useful for overlays, cards,
and floating elements.

78. What is the difference between SizedBox and Container?

 SizedBox: A widget that forces a child to have a fixed size.

 Container: A versatile widget used for layout, styling, and positioning.

79. What is a CustomScrollView?

CustomScrollView is a scrollable view that allows you to create custom scroll effects with slivers like
SliverAppBar and SliverList.

80. What is MediaQuery in Flutter?

MediaQuery provides information about the size and orientation of the device screen, useful for
building responsive layouts.

81. What are Cupertino widgets?

Cupertino widgets provide iOS-styled user interface components in Flutter, allowing you to create apps
that look native on iOS devices.

82. How do you pass data between screens in Flutter?

Data can be passed between screens in Flutter using Navigator.push with arguments or by using a state
management solution like Provider.

83. What is the difference between push and pushNamed?

 push: Pushes a route directly using a widget.

 pushNamed: Pushes a route based on its name, which is defined in a route table.

84. What is AppBar in Flutter?

AppBar is a widget that implements a Material Design app bar, typically used for placing titles,
navigation buttons, and other actions.

85. What is Drawer in Flutter?

Drawer is a slide-in navigation panel that provides easy access to a list of navigation items or settings.

86. What is SnackBar in Flutter?

SnackBar is a lightweight message bar that briefly displays at the bottom of the screen, often used for
notifications or feedback.

87. What is FloatingActionButton?


100 Flutter Interview Questions and Answers

FloatingActionButton is a circular button that floats above the content, usually for triggering primary
actions.

88. What is SharedPreferences in Flutter?

SharedPreferences is used to store simple key-value pairs persistently across app sessions.

89. How do you implement push notifications in Flutter?

Push notifications in Flutter can be implemented using packages like firebase_messaging for Firebase
Cloud Messaging (FCM).

90. What is showDialog in Flutter?

showDialog is a function used to display a modal dialog box.

91. How do you use BoxDecoration in Flutter?

BoxDecoration is used with Container to apply visual decorations like borders, shadows, and gradients
to a widget.

92. What is GridView in Flutter?

GridView is a widget that displays its children in a grid layout, useful for image galleries or product lists.

93. What is Flexible in Flutter?

Flexible is a widget that allows a child to occupy the available space in a row or column while still
respecting other widgets.

94. What is Image.network?

Image.network is a widget that loads and displays an image from a network URL.

95. What is the AspectRatio widget?

AspectRatio forces its child to maintain a specific aspect ratio.

96. How do you handle null safety in Flutter?

Null safety in Flutter is handled by adding ? to variable types that can accept null values, ensuring the
compiler can catch null reference errors.

97. What is the Divider widget in Flutter?

Divider is used to create horizontal or vertical lines between widgets.

98. What is Opacity in Flutter?

Opacity is a widget that changes the transparency of its child widget.

99. What is InkWell in Flutter?

InkWell is a widget that responds to touch events by showing a ripple effect.


100 Flutter Interview Questions and Answers

100. How do you use Timer in Flutter?

Timer is used to schedule a callback function to be executed after a certain delay or at regular intervals.

You might also like