- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我对 MeasureSpec.UNSPECIFIED
和 MeasureSpec.AT_MOST
有点困惑。我知道当 match_parent
或常量尺寸值设置为 layout_width
或 layout_height
时,MeasureSpec.EXACTLY
将在测量 View 时应用。
那么,MeasureSpec.UNSPECIFIED
和MeasureSpec.AT_MOST
呢?
我的理解是,当 layout_width
或 layout_height
设置为 wrap_content
时,MeasureSpec.UNSPECIFIED
将是应用,因为 wrap_content
意味着 View 的高度或宽度可以是任何大小,具体取决于内容。但是很多文章说wrap_content
的意思是MeasureSpec.AT_MOST
。所以我很困惑。我不知道什么时候应该应用 MeasureSpec.AT_MOST
。
最佳答案
View 大小的基本定义如下:
MeasureSpec.EXACTLY
- 一个 View 应该正好有这么多像素,不管它实际上想要多大。
MeasureSpec.AT_MOST
- 一个 View 可以是这个大小或更小,如果它测量得更小的话。
MeasureSpec.UNSPECIFIED
- View 可以是它需要的任何大小,以便显示它需要显示的内容。
MeasureSpec.AT_MOST
将应用于已设置为 WRAP_CONTENT
如果父 View 在大小上绑定(bind)。例如,您的父 View 可能绑定(bind)到屏幕大小。它的 child 也会被绑定(bind)到这个大小,但它可能不会那么大。因此,父 View 会将 MeasureSpec 设置为 AT_MOST
,这会告诉 subview 它可以在 0 和屏幕大小之间的任何位置。 child 必须进行调整以确保它符合所提供的范围。
在特殊情况下,边界无关紧要。例如,一个 ScrollView
。在 ScrollView
的情况下,子 View 的高度无关紧要。因此,它会向 subview 提供一个 UNSPECIFIED
,告诉 subview 他们可以达到所需的高度。 ScrollView
将为它们处理绘图和放置。
关于android - MeasureSpec.UNSPECIFIED 和 MeasureSpec.AT_MOST 何时应用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16022841/
我对 MeasureSpec.UNSPECIFIED 和 MeasureSpec.AT_MOST 有点困惑。我知道当 match_parent 或常量尺寸值设置为 layout_width 或 lay
我正在尝试使用以下代码测量布局的高度: int widthMeasureSpec = View.MeasureSpec.makeMeasureSpec(toExpand.getWidth(), Vie
我正在学习《专业 Android 4 应用程序开发》的第 4 章,它告诉我尺寸值和模式都是从传递给 onMeasure() 方法的 widthMeasureSpec 和 heightMeasureSp
我遇到了这个问题:https://stackoverflow.com/questions/20121696/slidingmenu-bug-in-android-4-3 但现在我已经修复了,我想分享我
Android Studio 0.8.10 你好 我正在尝试实现抽屉导航,但我一直收到此错误。该 fragment 扩展了 ListFragment 并且我已经覆盖了 getview 以扩充下面的布局
我已经搜索过有关此问题的答案,但没有找到解决方案。所以我在这里请求帮助。我正在创建自定义 View 。我已经覆盖了 onMeasure。代码如下。 @Override protected
我正在尝试实现抽屉导航,但我不断收到此错误。我看到了类似的问题,但对我没有用。我有以下布局activity_main2.xml: 在我的 activit
堆栈跟踪: 09-10 07:56:56.448 24867-24867/? E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.Illega
我正在关注 this来自的教程,我正面临一个奇怪的问题。 我的 DrawerLayout 中的内容并不重要,但如果它的 layout_height 或 layout_width 设置为硬编码数字以外的
我正在编写自己的布局,扩展 ViewGroup 类。您需要覆盖的方法之一是 onMeasure() 方法。在此方法中,父 View (将包含我的布局的 View )将传递我的布局可能具有的宽度和高度。
我使用以下两种方法 ( inspired/copied from here ) expand 和 collapse ScrollView 中的一些 TextViews > 点击“header”-Tex
我将 Auth0 与 Xamarin Forms PCL 库一起使用。我有以下 MainPage 类: namespace LoginPattern { public class MainPa
在我的应用程序中,我使用 Xamarin Shell 创建底部标签栏导航,如下所示: MainPage.xaml
这是我的 xml 布局文件: 但是当我启动我的 Android 应用程序时,出现错误(在运行时): E/AndroidRuntime: FATAL
嗨,我正在尝试在饼图顶部实现一个抽屉导航,但它不断崩溃,但它似乎打开了其他 Activity ,非常感谢。我使用 apptheme 作为主题,使用 MpAndroidChart api 作为饼图 Ja
这是我的 mainlayout 文件。 这是我编写与抽屉导航相关的代码的主要布局文件,还使用 include 包含工具栏。
我是一名优秀的程序员,十分优秀!