关于Android上的一些UI开发,我有一些问题和疑问。首先看一下这张图片:
首先在图像A)这是一个我插入并重复水平的图像,在屏幕顶部给出锯齿形状,无论屏幕尺寸和上面没有内容和背景颜色的textField - 但是我我敢肯定,即使它们都具有相同的十六进制颜色值(#BF0426),两种颜色也不尽如人意。其次,您还可以在锯齿形图像上看到一些严重的像素化。我该如何解决这两个问题?
然后在图像B)这里我有一个简单的listView。我想做的是,首先在两侧缩进一点,并在顶部和底部项目的角落。所以基本上我希望它看起来像截图上绘制的蓝色边框。 (您典型的iOS listView)。我该怎么做呢?
提前感谢任何提示!
答案 0 :(得分:5)
对于图像。出于好奇,为什么你不能简单地扩展你的图像以包括顶部像素?换句话说,构建重复图像,使其包含您尝试使用空textview创建的像素。这将至少处理颜色不匹配,因为颜色将全部从同一个地方生成。就像素化而言。你是真的在重复图像,还是在传播图像?传播肯定会导致你所看到的。
对于你的tableview: 对于左右缩进,您可以简单地使用tableview项的margin或padding属性。有通用填充和/或边距属性(将填充所有顶部,底部,左侧和右侧),或者每个顶部,底部,左侧和右侧都有单独的填充和/或边距属性。这里有一个关于填充与边距的很好的链接,你可能想要阅读。
Difference between a View's Padding and Margin
底部边距的示例属性(在XML文件中调用)
android:layout_marginBottom
setMargins(left, top, right, bottom) // for setting margins programmatically
用于顶部填充的示例属性(在XML文件中调用)
android:paddingTop
setPadding(left, top, right, bottom) // for setting padding programmatically
对于自定义顶部和底部,您应该能够使用以下教程
http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/
从这里开始,您应该能够将项目检测为第一个和最后一个项目,并将背景属性(图像)设置为具有圆顶或圆底的背景图像。这就是我在iPhone上的表现。我还实现了类似于tableviews的东西,但它们只是具有我自己的自定义视图的垂直布局,我看起来就像你想要的那样。
答案 1 :(得分:1)
要考虑的一件事是您使用的文件格式会在保存图像时使图像变形(有损压缩),因此具有特定颜色的.jpg可能看起来与具有相同颜色的.bmp不同。在尝试匹配图像时,请确保您使用相同的应用程序和/或导出设置。
此外,如果您使用与Android显示器不兼容的DPI创建图像,则会导致细节区域出现严重的像素化,尤其是渐变和阴影。