0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

flutter#2 AppBarをグラデーションにする

Last updated at Posted at 2021-05-13

この記事の内容は動画でも説明しているので参考にしてください。
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,

これでうまくいくと思います。エラーが出た場合はそのエラーをコピーしてネットに張り付けて検索してみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?