最新版本的Android支持库(23.2)增加了对矢量绘图的支持.它似乎是通过在本机上不支持矢量绘图的平台上动态栅格化矢量来实现的.
但是,栅格化图像似乎是固定大小,而非依赖于使用情况.这是一个例子.
向量
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zm0,3c1.66,0 3,1.34 3,3s-1.34,3 -3,3 -3,-1.34 -3,-3 1.34,-3 3,-3zm0,14.2c-2.5,0 -4.71,-1.28 -6,-3.22 0.03,-1.99 4,-3.08 6,-3.08 1.99,0 5.97,1.09 6,3.08 -1.29,1.94 -3.5,3.22 -6,3.22z"/>
</vector>
Run Code Online (Sandbox Code Playgroud)
布局
<ImageView
android:layout_width="128dp"
android:layout_height="128dp"
android:id="@+id/imageView"
app:srcCompat="@drawable/vector1"/>
Run Code Online (Sandbox Code Playgroud)
矢量是24dp x 24dp.它用于一个128dp x 128dp的ImageView.在不支持矢量绘图的平台上,生成的图像模糊,因为矢量以16dp光栅化并调整为128dp.
我发现的唯一解决方案是为每个预期大小创建一个单独的矢量drawable.创建一堆只有高度和宽度变化的重复向量非常烦人.如果您希望drawable为fill_parent或以其他方式动态调整大小,则无法解决问题.
必须在高级中定义矢量图像的尺寸几乎完全失败了首先使用矢量的好处.
有没有人有真正的工作?
我真的坚持这个.我在SQL方面有广泛的背景,但我刚刚开始了一项新工作,他们更喜欢使用LINQ进行简单查询.所以本着学习的精神,我试着重写这个简单的SQL查询:
SELECT
AVG([Weight] / [Count]) AS [Average],
COUNT(*) AS [Count]
FROM [dbo].[Average Weight]
WHERE
[ID] = 187
Run Code Online (Sandbox Code Playgroud)
为清楚起见,这是表模式:
CREATE TABLE [dbo].[Average Weight]
(
[ID] INT NOT NULL,
[Weight] DECIMAL(8, 4) NOT NULL,
[Count] INT NOT NULL,
[Date] DATETIME NOT NULL,
PRIMARY KEY([ID], [Date])
)
Run Code Online (Sandbox Code Playgroud)
这是我想出的:
var averageWeight = Data.Context.AverageWeight
.Where(i => i.ID == 187)
.GroupBy(w => w.ID)
.Select(i => new { Average = i.Average(a => a.Weight / a.Count), Count = i.Count() });
Run Code Online (Sandbox Code Playgroud)
Data.Context.AverageWeight是由SQLMetal生成的Linq To SQL对象.如果我尝试averageWeight.First()
我得到一个OverflowException.我使用SQL事件探查器来查看LINQ生成的参数化查询是什么样的.重新缩进,如下所示:
EXEC sp_executesql N' …
Run Code Online (Sandbox Code Playgroud) 两个表的高度都设置为50px,其内容不会溢出.但是带有标题的表实际上是70px,因为标题似乎没有包含在表的高度计算中.
任何人都可以解释在计算表高度时不包括标题的理性吗?
毕竟,这是桌子的孩子.如果你想将它从表格高度中排除,如果你不想包含它,可以在表格外放置标题.
.table {
display: table;
height: 50px;
}
.table-caption {
display: table-caption;
background-color: red;
height: 20px;
}
.table-row {
display: table-row;
background-color: green;
}
.table-cell {
display: table-cell;
}
Run Code Online (Sandbox Code Playgroud)
<div class="table">
<div class="table-row">
<div class="table-cell">table height is 50px</div>
</div>
</div>
<br>
<div class="table">
<div class="table-caption">caption</div>
<div class="table-row">
<div class="table-cell">table height is 70px</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)