我一直在为iOS和Android开发应用程序。
下面的代码构成实时屏幕,显示当前时间。
1。我确认a.unsqueeze(1) * b
在两个操作系统上均可工作。
2。我还确认它可以在实际的Android设备和Android模拟器上正常工作。
但是每次我尝试在iOS(仿真器和实际设备)上进行测试时,DateTime.now()
总是得到一个_timeString
。
此代码有什么问题?我不明白
这是我提前解决问题的环境。
VMware工作站15 Player,Xcode 10.3,Android Studio 3.4.2
null
答案 0 :(得分:0)
尝试更改日期格式
收件人
MM / dd / yyyy hh:mm:ss
答案 1 :(得分:0)
我运行了您的代码,没有任何更改。 (但是添加了一个入口点) 并且它按预期工作。
有关intl
软件包的任何其他信息都将有所帮助。这是我的整个应用以及下面的结果。
我的依存关系是intl: ^0.15.8
。
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:intl/intl.dart';
void main()
{
runApp(SampleApp());
}
class SampleApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Sample App',
home: TableLayout(),
);
}
}
class TableLayout extends StatefulWidget {
@override
_TableLayoutState createState() => _TableLayoutState();
}
class _TableLayoutState extends State<TableLayout> {
String _timeString;
String _formatDateTime(DateTime dateTime) {
return DateFormat('MM/dd/yyyy HH:mm:ss').format(dateTime);
}
@override
void initState() {
_timeString = _formatDateTime(DateTime.now());
Timer.periodic(Duration(milliseconds: 1000), (Timer t) => _getTime());
super.initState();
}
void _getTime() {
DateTime _now = DateTime.now();
final String formattedDateTime = _formatDateTime(_now);
if (this.mounted) {
setState(() {
_timeString = formattedDateTime;
});
}
}
@override
Widget build(BuildContext context) {
return
Scaffold(
body:
Container(
child:
Text("\n\n\n\n${_timeString}")
)
);
}
}