2012-10-09 150 views
2

嗨,下午好,我怎样才能提高我的图标的PNG质量?我从android开发者页面使用了这个工具包,但是我无法得到清晰的图像,我的意思是晶莹剔透,我是否需要以差异化方式加载这些图标,而不是只是拖入我的布局中?感谢清晰的图标水晶般清晰android应用程序

我用这个布局:

 <!-- Rightend Arrow --> 
<ImageView android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/arrow" 
    android:layout_alignParentRight="true" 
    android:layout_centerVertical="true"/> 
</RelativeLayout> 

例如,你可以看到日食尖锐,但在模拟器上的右箭头图标和设备看上去模糊:

you can see the right arrow en eclipse looks sharp but in the emulator and device looks blurred

回答

3

您需要提供适用于所有密度的资源。如果您只在res/drawable中放置一个图标,则会使用该资源并按比例关系对mdpi以上的密度进行缩放。因此,对于hdpi设备,您将看到可扩展版本的增大版本(150%),对于xhdpi,您会看到200%的图形增大版本。

这很糟糕。

您需要使用3:4:6:8比率创建较大版本的图形,其中mdpi是密度(4)。您大多可以忽略ldpi,但只需提供res/drawable的后备。您的hdpi图标应该大1.5倍,而您的xhdpi图标应该是2x的大图。因此,例如,对于mdpi(放置在res/drawable-mdpi),对于hdpi(放置在res/drawable-hdpi中),放置48x48像素(与设备无关的像素)的图像应该创建为48x48像素;为xhdpi放置96x96像素(放置在“res /绘制-xhdpi)。如果您的密度可用,Android会自动为您的密度选择正确的版本,并且不会对其进行缩放。

请记住,图形仍然会像您最初设计时一样尖锐。

有关更多信息,请参阅this article

+0

非常感谢,这是我的应用程序中的图标的一个问题,但是对于标题呢?我有自定义窗口标题并加载header.png我需要遵循相同的规则吗?你推荐我 – alexistkd

+1

你需要遵循相同的准则,为你的应用程序提供的任何位图图形。但是,您决定制作它们的尺寸取决于您,但请确保保持该比例。还建议从最大尺寸开始(比您需要的尺寸更大 - 面向未来!:)),并保持尺寸为4px的倍数,以便在不缩放工件的情况下轻松缩放图形。 – kcoppock

+0

好吧我知道我需要创建hdpi xhdpi mdpi和默认可绘制文件夹,默认的那个大小应该是多少? – alexistkd

-1

我使用MobiOne软件编写android应用程序,当我遵循36,48,72和96像素的图标大小规则时,我遇到了相同的模糊图标问题。你猜怎么了?我用300像素图像替换了96像素,并且在三星Galaxy S4上观看时产生的图标变得清脆锐利。我后来用200px图像替换了72px。