この記事の内容は動画でも説明しているので参考にしてください。
https://youtu.be/EJ9lZcsutBE
最初にコードを載せます。今回はAppBarをグラデーションにする。テキストを追加する。この二つをやります。
main.dart
import 'package:flutter/material.dart';
// MyAppのアプリを起動
void main() {
runApp(MyApp());
}
// MyAppの説明
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
// ここを変えるとアプリの色が変わる(green➡red, blueとか、知ってる色を試してみて)
primarySwatch: Colors.green,
),
// 上のタイトル ''で囲まれたところが表示される
home: MyHomePage(title: 'こんにちは'),
);
}
}
// MyHomePageの説明
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
// _MyHomePageStateの説明
class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
// アプリ上部のバー(色がついているところ)
appBar: AppBar(
// widget.titleというのは、上のclass MyAppの中に書いてあることを読み込んでいる
title: Text(widget.title),
),
// AppBar以外のアプリの中身
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
'You have pushed the button this many times:',
),
Text(
'$_counter',
style: Theme.of(context).textTheme.headline4,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: Icon(Icons.add),
),
);
}
}
まずはAppBarにグラデーションを付けます。様々な方法があるのですが、今回はパッケージをインストールして行います。
パッケージはこれです。
https://pub.dev/packages/new_gradient_app_bar
インストールの仕方ですが、サイトのGetting Startedに書いてある通りに進めます。まずはpubspec.yamlに書く。
pubspec.yaml
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2
new_gradient_app_bar: ^0.2.0
ちなみに、どこのファイルに記述してあるかはコードの左上に小さく表示されているので参考にしてください。
次にimportする
main.dart
import 'package:flutter/material.dart';
import 'package:new_gradient_app_bar/new_gradient_app_bar.dart';
// MyAppのアプリを起動
void main() {
runApp(MyApp());
}
AppBarをNewGradientAppBarに変える
main.dart
return Scaffold(
// アプリ上部のバー(色がついているところ)
appBar: NewGradientAppBar(
title: Text('Flutter'),
gradient:
LinearGradient(colors: [Colors.blue, Colors.purple, Colors.red])),
// AppBar以外のアプリの中身
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
これでうまくいくと思います。エラーが出た場合はそのエラーをコピーしてネットに張り付けて検索してみてください。