嗨,我只是试着用MediaQuery.of(context).size.height来提高身高,但是得到了FlutterError (No MediaQuery widget ancestor found. MyApp widgets require a MediaQuery widget ancestor. The specific widget that could not find a MediaQuery ancestor was: MyApp The ownership chain for the affected widget is: "MyApp ← [root]"
如何在MediaQuery之上访问MaterialApp信息?
我需要设备的高度和宽度信息。
代码:
final height = MediaQuery.of(context).size.height; // I WANT TO REACH THIS !!!
final width = MediaQuery.of(context).size.width; // I WANT TO REACH THIS !!! IN HERE
return MaterialApp(
theme: ThemeData(
primarySw
当我试图从MediaQuery.of() called with a context that does not contain a MediaQuery.访问MediaQuery时,我得到了MaterialApp
return new MaterialApp(
title: 'Flutter Demo',
theme: getTheme(MediaQuery.of(context)),
home: new Container(),
);
我目前正在开发一个应用程序,我需要以循环方式显示选项列表。就像左轮手枪?/轮子?我甚至不知道怎么用词来定义它。
作为参考,我想要Glovo这样的东西:
我自己尝试了一些东西,但是它很混乱,不适合每个设备的纵横比。这是密码
/* HomeBubbleItem is just a Container with BoxShape.circle and Text */
Widget _buildExperiencesSection() {
return Center(
child: Stack(
children: <Widget>[
我有一个实时聊天屏幕,我正在工作,我得到的结果是在下面的两个图像中 BEFORE i click the textfield AFTER i click the textfield 我已经尝试了许多不同的解决方案,但没有好的结果,包括添加"resizeToAvoidBottomInset: true“到我的脚手架,我需要用户能够看到文本字段和键盘在同一时间,就像一个正常的聊天,我相信UI自己调整大小或什么,我不知道我在哪里出错了,我的完整代码在下面供审查 import 'package:flutter/material.dart';
import 'packa
当窗口调整大小并命中某个大小时,我试图运行一个函数。以下内容运作得很好:
var mediaQuery = window.matchMedia("(max-width: 480px)")
mobileSlider(mediaQuery) // Call listener function at run time
mediaQuery.addListener(mobileSlider) // Attach listener function on state changes
然而,我收到了一个警告,addListener是不受欢迎的,所以我试图改变它,但没有成功。我试过以下几种方
我已经创建了一个名为tags的模型类,但不能在GridView中使用它,最好的方法是从每个标签的标签变量下面创建一个Conatiner,并将这些容器放在网格视图中。我的标记类看起来像这样, import 'package:flutter/material.dart';
class Tag {
final String tag;
final Color color;
final String desc;
final String title;
Tag(
{required this.color,
required this.tit
开始学习MediaQuery.of(context),所以我在想是否有可能创建一个返回ThemeData对象的函数,但在这个函数中我想使用Flutter。我的意思是,我知道我可以创建这样一个函数,但是如果我在其中使用MediaQuery.of(context),我会得到一个错误(MediaQuery.of() called with a context that does not contain a MediaQuery),抱怨缺少MediaQueryProvider。我知道我可以在MaterialApp的子元素中使用MediaQuery,但我现在有一个设计问题。想象一下:
ThemeData
我想创建一个响应式的导航,但是当我调整窗口大小时不运行我的代码,我使用的是de function matchMedia // Hamburguer 设mediaQuery = window.matchMedia('(max-width: 800px)'); 让hamburgerToggle = (mediaQuery) => { if (mediaQuery.matches) {
let navItems = document.querySelector('.nav_items');
let nav = document.querySel
background is not set, its display top of the screen ..
background is not set, its display top of the screen ..
没有设置背景,其显示在屏幕顶部。没有设置背景,其显示在屏幕顶部。
下面给出了我的代码,请检查并告诉我哪里出错了.
下面给出了我的代码,请检查并告诉我哪里出错了.下面给出了我的代码,请检查并告诉我哪里出错了.
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBa
我有两个问题。
first:
使用textScaleFactor使文本响应根据设备的字体大小,不是吗?
第二版:
使用textScaleFactor of MediaQuery和使用文本属性的textScaleFactor有什么区别。
MediaQuery代码:
MediaQuery(
child: Text( "I Will Read 10 pages of my book."),
data: MediaQuery.of(context).copyWith(textScaleFactor: 1.5)),
),
文本代码:
Text(
我使用Hero组件在两个页面之间创建动画。Hero组件用于包装Image小部件(没有问题)和Container小部件(有问题)。
抛出以下溢出错误:
══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞════════════════════════════════════════
I/flutter ( 4256): The following message was thrown during layout:
I/flutter ( 4256): A RenderFlex overflowed by 104 pixels on the righ