Flutter Interview Questions and Answers
Ques 1. What is Flutter?
Flutter is an open-source UI software development toolkit created by Google. It is used to develop natively compiled applications for mobile, web, and desktop from a single codebase.
Example:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
Ques 2. Explain the widget tree in Flutter.
The widget tree is a hierarchical structure of widgets in a Flutter application. Widgets are UI components, and the tree represents the user interface. Each widget has a parent and can have children. Flutter apps are built by combining multiple widgets.
Example:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('My App'),
),
body: Text('Hello, Flutter!'),
),
);
}
}
Ques 3. What is the 'setState' method in Flutter used for?
'setState' is a method in the 'State' class of Flutter. It is used to rebuild the widget tree and schedule a rebuild of the user interface when the internal state of the widget changes.
Example:
void _incrementCounter() {
setState(() {
_counter++;
});
}
Ques 4. Explain the difference between 'StatefulWidget' and 'StatelessWidget' in Flutter.
'StatefulWidget' is a widget that can change its state during runtime, while 'StatelessWidget' is a widget that remains immutable once it is built. 'StatefulWidget' is used for dynamic UI components.
Example:
class MyStatefulWidget extends StatefulWidget {
@override
_MyStatefulWidgetState createState() => _MyStatefulWidgetState();
}
class _MyStatefulWidgetState extends State{
// Stateful logic here
}
Ques 5. What is the purpose of the 'async' and 'await' keywords in Dart/Flutter?
'async' and 'await' are used for handling asynchronous operations in Dart/Flutter. 'async' is used to mark a function as asynchronous, and 'await' is used to wait for the result of an asynchronous operation.
Example:
FuturefetchData() async {
var data = await fetchDataFromServer();
print('Data: $data');
}
Most helpful rated by users: