Flutter:更改应用栏上文本的位置

时间:2019-12-05 23:51:14

标签: android flutter dart flutter-layout

如何更改应用栏右侧的“ Sito Web”文本的位置?我与锥虫

SELECT_CLAUSE += ", IF(%s IS NULL, -1, %s=%s) AS %s_score" % (
    field, field, '%s', field
)

,但他将其移动到了应用栏右上角。在这里,我的意思是https://ibb.co/X28TzNN的屏幕将“ Sito Web”的位置更改为红色线圈的位置。这就是代码,我也尝试使用此方法,但不能在应用栏中移动。这里是带有应用栏background_image_task-9.dart的文件

field = 'name'
SELECT_CLAUSE += ', IF(name IS NULL, -1, name=%s) AS name_score'

这里是带有容器超链接的文件。dart

alignment: Alignment.TopRight

main.dart

import 'package:flutter/material.dart';

class BackgroundImage extends StatelessWidget{
  final Widget body;
  BackgroundImage({this.body});
    @override
    Widget build(BuildContext context){
      return Scaffold(
        appBar: AppBar(
          elevation: 0,
          title: Text('Blumax', style: TextStyle(
            fontWeight: FontWeight.w500,
            fontFamily: 'DancingScript',
            fontSize: 40
          ),),
          centerTitle: false,
        ),
        body: Stack(
          children: <Widget>[Container(
          decoration: BoxDecoration(
            image: DecorationImage(image: AssetImage("assets/blumax.jpg"), fit: BoxFit.cover),
          ),
        ),
          body
         ]
       )
    );
  }
}

1 个答案:

答案 0 :(得分:1)

您可以使用1.19小部件,并使用Row分别在mainAxisAlignment: MainAxisAlignment.spaceBetween的左侧和右侧渲染BluMaxSito Web元素。而且,由于要在点击appbar之后打开一个URL,因此可以用sito web包装该元素,然后调用GestureDetector方法来打开所需的URL。有效的示例代码如下:

launchURL

这在屏幕上显示为:

enter image description here ...

appBar: AppBar(
          title: Row(
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: <Widget>[
              Text('Blumax'),
              GestureDetector(
                  child: Text('Sito Web'),
                  onTap: _openURL
              )

            ],
          ),
          centerTitle: false,
          actions: <Widget>[
            PopupMenuButton<int>(
              itemBuilder: (context) =>
              [
                PopupMenuItem(
                  value: 1,
                  child: Text("First"),
                ),
                PopupMenuItem(
                  value: 2,
                  child: Text("Second"),
                ),
              ],
            )
          ],
        ),

我只是使用void _openURL() async { const url = 'https://flutter.dev'; if (await canLaunch(url)) { await launch(url); } else { throw 'Could not launch $url'; } } Blumax进行演示,但是您可以根据需要替换它。

希望这能回答您的问题。