小编Cur*_*s99的帖子

为什么 ShowcaseView 在第一次尝试时会抛出错误?

嘿,我在 Flutter 应用程序中使用 ShowCaseView。当我第一次打开我的应用程序时,注册后没有展示,甚至没有显示应该“展示”的图标。但是当我关闭应用程序并再次打开它时,它工作得很好。

\n

这是涉及展示的代码:

\n
class _HomeSearchPageState extends State<HomeSearchPage> {\n\n  final keyOne = GlobalKey();\n\n\n  void initState() {\n    super.initState();\n\n  WidgetsBinding.instance.addPostFrameCallback(\n    (_) => ShowCaseWidget.of(context).startShowCase([\n      keyOne,\n    ]),\n  );\n
Run Code Online (Sandbox Code Playgroud)\n

}

\n

现在是脚手架:

\n
    return Scaffold(\n    appBar: PreferredSize(\n      preferredSize: Size.fromHeight(getTopBarSize()),\n      child: AppBar(\n        automaticallyImplyLeading: false,\n        title: Text(\n          'username',\n          style: TextStyle(fontSize: 14),\n        ),\n        actions: <Widget>[\n          Showcase(\n            key: keyOne,\n            description: 'test',\n            child: IconButton(\n                icon: Icon(Icons.search),\n                onPressed: () {\n                  showSearch(context: context, delegate: DataSearch())\n                      .whenComplete(() => setName());\n                }),\n          ),\n        ],\n      ),\n    ),)\n
Run Code Online (Sandbox Code Playgroud)\n

我做了与 Github 示例中完全相同的操作,但第一次仍然抛出此错误:

\n …

flutter

4
推荐指数
1
解决办法
1955
查看次数

在 LatLng 坐标系中旋转对象

嘿,我正在尝试在经纬度系统中绕其自己的中心旋转一条线。

我得到了角度和两点。所以我尝试附加旋转矩阵,如下所示(以下方法采用点的纬度和经度以及角度):

 LatLng rotate(double lat, double long, double angle){
   double rad = angle*pi/180;
   double newLong = long*cos(rad)-lat*sin(rad);
   double newLat = long* sin(rad) + lat*cos(rad);

  return LatLng(newLat,newLong);

  }
Run Code Online (Sandbox Code Playgroud)

例如我得到了点A(纬度:x,经度:y)和点B(纬度:x,经度:y)。连接这两个点就形成一条线。现在我想用上面的方法围绕它自己的中心旋转两条线,通过调用:

LatLng newA = rotate(A.latitude,A.longitude);
LatLng newB = rotate(B.latitude,B.longitude);
Run Code Online (Sandbox Code Playgroud)

但是当我连接 newA 和 NewB 两个点时,没有达到预期的效果。

正如 @Abion47 在他的回答中澄清的那样,我需要 3 维旋转,但如何做到这一点?如果线非常小,二维是否可能?

latitude-longitude coordinates coordinate-transformation dart flutter

3
推荐指数
1
解决办法
2976
查看次数