2012-06-05 85 views
7

我有幾個關於Android上的一些UI開發的問題和疑問。首先看看這個圖像:防止圖像像素化,縮進listViews和添加圓角

enter image description here

首先在圖像A)這是我插入圖像和水平重複,得到鋸齒形在屏幕不管屏幕尺寸的頂部,並高於一個沒有內容和背景顏色的textField - 但我相信你可以確定兩種顏色的匹配程度並不盡相同,儘管它們都具有相同的十六進制顏色值(#BF0426)。其次,你也可以在鋸齒形圖像上看到一些嚴重的像素。我如何解決這兩個問題?

然後在圖像B)在這裏我有一個簡單的listView。我想要做的,首先是在兩邊縮小一點,並在頂部和底部項目的四個角落。所以基本上我想讓它看起來像截圖上的藍色邊框。 (你典型的iOS listView)。我如何去做這件事?

在此先感謝您的任何提示!

回答

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上的做法。我也實現了像桌面視圖一樣的東西,但它們只是垂直佈局,並帶有我自己的自定義視圖,這些視圖讓我看起來像是你想要的。

+0

優秀的答案。非常豐富:-)非常感謝! – Tiwaz89

+0

很高興它回答你所需要的:-) – trumpetlicks

1

有一點要考慮的是你使用的是要爲你保存它(有損壓縮)變異的圖像文件格式,因此帶有一定的顏色爲.jpg可能看起來比具有相同顏色的不同.BMP。確保您的作者在嘗試匹配圖像時使用相同的應用程序和/或導出設置。此外,如果您使用與android顯示不兼容的DPI創建了圖像,則可能會在詳細區域導致嚴重的像素過度,尤其是漸變和陰影。