从iOS开发与正在添加快捷我能够提出具有跨期模态溶解的动画和清晰的背景显示是什么当前视图后面,将其模糊化,仿佛像一个弹出窗口,我怎么能在颤振实现这一目标?我使用Fluro导航到下一个视图,淡入过渡效果,但当我将容器和材质小部件颜色更改为透明时,背景为黑色.
我如何导航到下一页:
__PRE__
过滤页面代码:
__PRE__
**更新**
我得到了我的目标,但是有一个很大的问题.我将过滤器小部件和主容器小部件放在一个__CODE__小部件中,将过滤器小部件置于顶部,但最初的不透明度为0.我想要的效果完美但现在我无法与它下面的小部件进行交互,因为它完全覆盖了另一个小部件......
码:
__PRE__
我无法找到解决方案,我从firebase获取数据,其中一个字段是时间戳,看起来像这样 - > 1522129071.在swift我能够转换它并使其可读但我不能由于我不知道所有的类和谷歌没有帮助什么不是,所以将代码转换为飞镖.
SWIFT:
func readTimestamp(timestamp: Int) {
let now = Date()
let dateFormatter = DateFormatter()
let date = Date(timeIntervalSince1970: Double(timestamp))
let components = Set<Calendar.Component>([.second, .minute, .hour, .day, .weekOfMonth])
let diff = Calendar.current.dateComponents(components, from: date, to: now)
var timeText = ""
dateFormatter.locale = .current
dateFormatter.dateFormat = "HH:mm a"
if diff.second! <= 0 || diff.second! > 0 && diff.minute! == 0 || diff.minute! > 0 && diff.hour! == 0 || diff.hour! > 0 && diff.day! == 0 {
timeText = …Run Code Online (Sandbox Code Playgroud) 我正在尝试将 n 张照片上传到 Firebase 存储并将这些 URL 保存在 Firestore 内的数组中,但我无法获取downloadURL()或者我不知道在哪里可以找到它。我已经检查了其他答案,但那些是针对单个文件的,我正在尝试上传一批并将 URL 存储在一起,而不是上传并将 URL 存储到 Firestore 等等......
代码:
_uploadImages(String userID, String productID, List<File> images, Function onSuccess(List<String> imageURLs), Function onFailure(String e)) {
List<String> imageURLs = [];
int uploadCount = 0;
StorageReference storeRef = FirebaseStorage.instance.ref().child('Products').child(userID).child(productID).child(uploadCount);
StorageMetadata metaData = StorageMetadata(contentType: 'image/png');
images.forEach((image) {
storeRef.putFile(image, metaData).onComplete.then((snapshot) {
STUCK AT THIS POINT SINCE THE SNAPSHOT DOESN'T SHOW THE URL OPTION...
//imageURLs.add(snapshot. )
uploadCount++;
if (uploadCount == images.length) {
onSuccess(imageURLs);
}
});
});
}
Run Code Online (Sandbox Code Playgroud) dart firebase flutter firebase-storage google-cloud-firestore
基本上我有很多小部件、服务和东西,就像大多数人一样,我需要在整个应用程序中访问它们。我想知道是否有一个导出每个文件的单个文件,然后只是简单地在每个页面/文件中导入一个文件我需要访问某些内容,而不仅仅是导入页面需要的特定文件,它会减慢应用程序的速度吗或导致任何问题或增加文件大小等......或者它的行为是否相同?
例子
login_page.dart
import '1.dart'
import '2.dart'
Run Code Online (Sandbox Code Playgroud)
主页.dart
import '2.dart'
import '3.dart'
import '9.dart'
import '10.dart'
Run Code Online (Sandbox Code Playgroud)
settings_page.dart
import '1.dart'
import '2.dart'
import '9.dart'
import '10.dart'
Run Code Online (Sandbox Code Playgroud)
或者...
all_imports.dart:
export '1.dart'
export '2.dart'
export '3.dart'
... (up until)
export '10.dart'
Run Code Online (Sandbox Code Playgroud)
在每个飞镖文件中:
import 'all_imports.dart'
Run Code Online (Sandbox Code Playgroud) 我有一个流构建器在监听 Firestore,它有点工作。主要问题是streambuilder不断重建(如果它不花费我额外的读取,那么不用担心,但如果它这样做了,那么这是一个我假设它确实存在的问题)。当主页第一次构建时,当我转到另一个页面时,它会再次构建,当我弹回主页时,它会第三次重建。
代码:
class _RequestsListState extends State<RequestsList> with AutomaticKeepAliveClientMixin {
final Map<String, List<Post>> posts = {};
final List<String> postsUserIDs = [];
@override
bool get wantKeepAlive => true;
@override
Widget build(BuildContext context) {
super.build(context);
print('RequestsList');
User cUser = InheritedUser.of(context).user;
return StreamBuilder<List<Post>>(
initialData: cUser.posts,
stream: APIs().posts.auPostsStream(cUserID: cUser.userID),
builder: (context, snap) {
if (snap.hasError) {
print('AUPostsList.dart StreamBuilder Error: ${snap.error}');
return null;
} else {
print('POSTS LENGTH');
print(snap.connectionState);
print(cUser.posts.length);
this.posts.clear();
this.postsUserIDs.clear();
snap.data.forEach((post) {
if (this.posts[post.user.documentID] == null) {
this.posts[post.user.documentID] = [post];
} else { …Run Code Online (Sandbox Code Playgroud) 有没有办法消除 CupertinoNavigationBar 的模糊,使其真正透明?我去掉了边框和颜色,但有一个模糊,对于 android AppBar 没有任何模糊,但对于 iOS AppBar 它就在那里。我检查了它的代码,并且有一个ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0)应用到它,但我如何删除它?
代码:
CupertinoNavigationBar(
backgroundColor: Colors.transparent,
border: Border.all(
color: Colors.transparent,
width: 0.0,
style: BorderStyle.none),
leading: IconButton(
icon: Icon(
Icons.close,
color: Colors.red,
),
onPressed: () {
Navigator.pop(context);
}),
automaticallyImplyLeading: false,
trailing: IconButton(
icon: Icon(
Icons.refresh,
color: Colors.blue,
),
onPressed: widget.onRestart),
),
Run Code Online (Sandbox Code Playgroud) 我创建了一个新的 flutter 项目,它在 Android 上的计数器上工作得很好,但是当我粘贴旧代码和依赖项等东西(在 iPhone 上工作得很好)时,它停止工作并给出以下错误:
\n\n在粘贴我的代码之前:
\n\nLaunching lib/main.dart on Android SDK built for x86 in debug mode...\nRunning Gradle task 'assembleDebug'...\n\xe2\x9c\x93 Built build/app/outputs/apk/debug/app-debug.apk.\nInstalling build/app/outputs/apk/app.apk...\nD/FlutterActivity(21443): Using the launch theme as normal theme.\nD/FlutterActivityAndFragmentDelegate(21443): Setting up FlutterEngine.\nD/FlutterActivityAndFragmentDelegate(21443): No preferred FlutterEngine was provided. Creating a new FlutterEngine for this FlutterFragment.\nD/FlutterActivityAndFragmentDelegate(21443): Attaching FlutterEngine to the Activity that owns this Fragment.\nD/FlutterView(21443): Attaching to a FlutterEngine: io.flutter.embedding.engine.FlutterEngine@18ff028\nD/FlutterActivityAndFragmentDelegate(21443): Executing Dart entrypoint: main, and sending initial route: /\nSyncing files to device Android SDK built for x86...\nD/EGL_emulation(21443): …Run Code Online (Sandbox Code Playgroud) 试图研究,但找不到解决方案。我想使用 CupertinoSliverNavigationBar,它是顶部导航栏的大标题版本,我可以在 Xcode Storyboard 中实现这一点,但只需将按钮添加到顶部栏,但该trailing选项只允许一个小部件。
我尝试使用 aRow()但这会弄乱位置和标题 aloooot。
我有以下方法来查看用户是否已经登录,在这种情况下我确实登录并且该getCurrentUser()功能有效,因为在控制台中它确实返回“USER IS NOT NULL”但主页小部件仍然为空给我“WIDGETS LIBRARY 捕获的异常”说家不能为空之类的东西。
用户API.dart
Future<FirebaseUser> getCurrentUser() async {
FirebaseUser user = await FirebaseAuth.instance.currentUser();
if (user != null) {
return user;
} else {
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
main.dart
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
Widget home;
APIs().usersAPI.getCurrentUser().then((u) {
if (u == null) {
print('USER IS NULL');
home = WelcomePage();
} else {
print('USER IS NOT NULL');
home = FeedPage();
}
});
return MaterialApp(
title: "Jedi",
debugShowCheckedModeBanner: false,
home: home,
routes: { …Run Code Online (Sandbox Code Playgroud)