小编chr*_*ris的帖子

在x轴以下刻度(iOS图表)

我想在x轴下方打勾,日期标签(3.6。,7.6。,12.6。17.6,21.6。,26.6。)所在的位置(请参见下图)。我正在使用iOS图表库(https://github.com/danielgindi/Charts)。

我设法通过覆盖drawGridLine方法在图表内做出刻度。我所做的就是将线段的开头从viewPortHandler.contentTop更改为viewPortHandler.contentBottom - 5。即,网格线从x轴上方开始5个像素。但是,当将网格线延伸到x轴(viewPortHandler.contentBottom + 10)之外时,该线仍只会向下绘制到x轴,而不能向下绘制。有人可以指出我正确的方向吗?如何在x轴下方绘制垂直线?

这是我的自定义XAxisRenderer:

class XAxisRendererWithTicks: XAxisRenderer {

    override func drawGridLine(context: CGContext, x: CGFloat, y: CGFloat) {
        guard
            let viewPortHandler = self.viewPortHandler
            else { return }

        if x >= viewPortHandler.offsetLeft
            && x <= viewPortHandler.chartWidth
        {
            context.beginPath()
            context.move(to: CGPoint(x: x, y: viewPortHandler.contentBottom - 5))
            context.addLine(to: CGPoint(x: x, y: viewPortHandler.contentBottom + 10))
            context.strokePath()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

蜱虫出现,但我希望他们能够低于 x轴:

在此处输入图片说明

这里有一个类似的问题,但是它的答案并没有真正帮助我:X轴iOS图表上的垂直线

ios swift ios-charts

5
推荐指数
1
解决办法
439
查看次数

Flutter 在任何 BuildContext 上绘制 Flushbar

我使用flushbar向用户显示应用内通知,但我认为这个问题适用于任何想要覆盖在当前屏幕上的小部件,例如小吃店。

我希望能够显示独立于屏幕之间导航的通知,即,如果用户在屏幕之间导航,则通知应保留在所有屏幕上。因为刷新条通知仅在当前 BuildContext 上绘制,所以一旦用户关闭当前屏幕,通知也会消失(因为通知小部件是该屏幕小部件子树的一部分)。

无论导航如何,有没有办法在整个应用程序顶部显示小部件(例如通知)?

EDIT1:添加了示例代码。

import 'package:flushbar/flushbar_route.dart' as route;
import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: FirstScreen(),
    );
  }
}

class FirstScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('First Screen'),
      ),
      body: Center(
        child: RaisedButton(
          child: Text('go to second screen'),
          onPressed: () {
            Navigator.of(context).push(
              MaterialPageRoute(builder: (BuildContext context) => SecondScreen())
            );
          },
        ),
      ),
    );
  } …
Run Code Online (Sandbox Code Playgroud)

flutter

5
推荐指数
1
解决办法
6573
查看次数

标签 统计

flutter ×1

ios ×1

ios-charts ×1

swift ×1