问题标签 [onmeasure]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - (Android 或 AndroidTV)当我们用 (1,1) 设置 setMeasuredDimension 时,我们得到了黑屏
我遇到了一些问题。当我们将 setMeasuredDimension 设置为 (1,1) 时,它会变成黑屏。(我正在寻找后面的视图。但是当我们将(1,1)屏幕变为黑色时)如果我将setMeasuredDimension设置为(2,2),它的操作没有问题。你能说出原因吗?
我跟踪调用堆栈,我注意到当应用程序运行以显示 customView2 时,RenderNode.java 上的 nSetHasOverlappingRendering 函数被调用为 true,并且我们的电视设置为黑屏。
这是在 androidTV 上测试的,下面是我们的构建信息。compileSdkVersion:28 minSdkVersion:28 targetSdkVersion:28
谢谢大家。
-- MainActivity --(这是为了测试)
--testCustomView2(这是为了测试)--
-- activity_main.xml (res/layout)--
android - 3个textView项目的换行符根据它们的长度
问题有这个 UI 问题:
1) 我有 3 个textViews
我想在一个父视图中保存。
2)我想在尽可能少的行中填充尽可能多的项目。
3) 仅在 2 个项目之间有分隔符。
推荐算法:
获取容器的宽度获取每个项目未指定的宽度(为此,我必须创建一个自定义 textView 来覆盖onMeasure()
)。
计算并放在一边"last line remaining width"
。
如果下一个 textView 可以适合最后一行剩余宽度:
- 使最后一个分隔符可见
- 把它放在同一行并移动到下一个 textView 项目
别的:
- 打开新行
remaining width = (container's width - current item's width)
- 使最后一个分隔符不可见
- 将当前项目放在该行中(如果需要,换行)
我有两个选择:
- 使用水平线性布局的垂直线性布局。
- 使用约束布局。
我会填写一个列表列表,并通过代码填充水平线性布局。
或者通过代码填充约束布局(不太通用,我想更难)。
有没有更简单的解决方案?
android - ViewPager 滞后于测量
当 ViewPager 有 3 个页面时它可以正常工作,但是当页面数变成大约 10 个应用程序滞后时。每个页面都有嵌套的自定义视图
日志说:
为什么会发生取决于页数?设置屏幕页面(pager.offscreenPageLimit = 3)也无济于事
android - 向加载图像添加进度条
我正在尝试创建一个在从服务器下载图像时显示的进度条。此图像被加载到自定义视图中。(我需要它是自定义的,因为我在图像上绘制。)
我的解决方案是将自定义视图添加到片段布局下的 XML 中,并将其可见性标记为 Visibility.GONE。这在 XML 编辑器中有效,因为进度条占据了整个空间。隐形不起作用,因为它的位置仍然显示。
当图像路径提供给我的自定义视图时,问题就出现了。似乎在视图上设置 Visibility.GONE 意味着该视图未被测量。但我需要视图的尺寸来衡量位图应该有多大。
从自定义视图查看日志,它正在调用 onMeasured() 但它为时已晚。我需要在 setImage() 之前调用 onMeasure()。有没有更好的方法来处理这个问题,如果没有,是否有办法强制代码等到我知道视图已经完成了它的测量过程?
android - 如何在不复制和粘贴其父 onMeasure 实现的情况下修改自定义 TextView WRAP_CONTENT 高度?
我正在创建一个自定义TextView
,我想知道是否可以在WRAP_CONTENT
不复制和粘贴其父onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int)
实现的情况下修改生成的高度计算。
假设我的WRAP_CONTENT
计算等于父母的结果计算 + 16dp
。
xamarin - 在行定义中将高度设置为自动时,自定义控件占用了全部空间
我试图在 OnMeasure 方法中返回相同的大小。如果我将自定义控件的 RowDefinition 值设置为 auto,则自定义控件也会在下一行定义空间中呈现。
自定义控件以 3 行和 4 行呈现,第 4 行控件在屏幕上不可见。
[Xaml]
[C#]
当我在网格视图中添加自定义(MyBoxview)控件时,意味着工作正常。请对此提出任何建议。