我想在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图表上的垂直线
我使用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)