hint_bubble 0.0.1 copy "hint_bubble: ^0.0.1" to clipboard
hint_bubble: ^0.0.1 copied to clipboard

Bubble hint window display.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:hint_bubble/hint_bubble.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key});

  // This widget is the home page of your application. It is stateful, meaning
  // that it has a State object (defined below) that contains fields that affect
  // how it looks.

  // This class is the configuration for the state. It holds the values (in this
  // case the title) provided by the parent (in this case the App widget) and
  // used by the build method of the State. Fields in a Widget subclass are
  // always marked "final".

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    final Widget child = Container(
      alignment: AlignmentDirectional.center,
      color: Colors.transparent,
      padding: const EdgeInsetsDirectional.all(10),
      height: 40,
      child: const Text(
        'Bubble',
        style: TextStyle(
          height: 1,
          color: Colors.white,
        ),
      ),
    );
    return Scaffold(
      body: Align(
        alignment: AlignmentDirectional.centerStart,
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: [
                Stack(
                  clipBehavior: Clip.none,
                  children: [
                    PositionedDirectional(
                      bottom: 50,
                      child: HintBubbleTile(
                        builder: (BuildContext context) => child,
                        color: Colors.black.withOpacity(0.5),
                        triangleHeight: 10,
                        triangleWidth: 10,
                        triangleOffset: 10,
                        triangleStart: true,
                        radius: 5,
                        position: TrianglePosition.bottom,
                      ),
                    ),
                    PositionedDirectional(
                      top: 50,
                      child: HintBubbleTile(
                        builder: (BuildContext context) => child,
                        color: Colors.black.withOpacity(0.5),
                        triangleHeight: 10,
                        triangleWidth: 10,
                        triangleOffset: 10,
                        triangleStart: true,
                        radius: 5,
                        position: TrianglePosition.top,
                      ),
                    ),
                    PositionedDirectional(
                      start: 100,
                      child: HintBubbleTile(
                        builder: (BuildContext context) => child,
                        color: Colors.black.withOpacity(0.5),
                        triangleHeight: 10,
                        triangleWidth: 10,
                        triangleOffset: 10,
                        triangleStart: true,
                        radius: 5,
                        position: TrianglePosition.left,
                      ),
                    ),
                    PositionedDirectional(
                      end: 100,
                      child: HintBubbleTile(
                        builder: (BuildContext context) => child,
                        color: Colors.black.withOpacity(0.5),
                        triangleHeight: 10,
                        triangleWidth: 10,
                        triangleOffset: 10,
                        triangleStart: true,
                        radius: 5,
                        position: TrianglePosition.right,
                      ),
                    ),
                    Container(
                      color: Colors.red,
                      width: 100,
                      height: 50,
                    )
                  ],
                ),
              ],
            ),
          ],
        ),
      ),
    );
  }
}
0
likes
130
points
19
downloads

Publisher

unverified uploader

Weekly Downloads

Bubble hint window display.

Homepage

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter

More

Packages that depend on hint_bubble