2012-03-26 19 views
8

我已经创建了一个小测试应用程序来试用可缩放比例。可绘制的比例 - setImageLevel决定比例吗?

我在xml中定义我的drawable并将其保存为scale_up.xml。我有一个main.xml布局文件与ImageView。我在ImageView中使用android:src="@drawable/scale_up"来使用我在xml中创建的drawable。在我的活动中,我使用myImageView.setImageLevel(some level here)来设置在main.xml中定义的ImageView的级别。一切正常,ImageView显示在scale_up中定义的drawable。

我的困惑如下:

  • 改变scaleHeightscaleWidth%在scale_up.xml使得没有可察觉的区别,如果该电平被设定为10000
  • 改变变化setImageLevel(介于0和10000)的电平图像的大小 - 实际上只能在5000左右。scaleHeight和scaleWidth的%值越高,图像越小(取决于setImageLevel()的值)

我想我的问题/ s的是:

  1. 是正确使用setImageLevel(),传递0和10000之间的水平 - 在活动控制在XML文件中定义的可绘制的大小?
  2. 是什么scaleHeight,scaleWidth和setImageLevel()之间的关系 - 因为现在我明白了,我可能也只是设置scaleHeight和scaleWidth至100%,然后用setImageLevel(5000)获得50%的缩放图像 - 即增加或减少setImageLevel(0 to 10000)将改变规模 - 使得scaleHeightscaleWidth%非常毫无意义。

感谢这个的任何澄清,也许是一个如何正确使用可绘制尺度(以xml定义)的例子。

回答

0
  1. 编号setImageLevel更像是图像的枚举类型。它用于显示不同的图像,例如电池充电电平或信号棒显示。您将一个图像置于等级1下,低电量,另一个低于2,中等电池,等等。然后你使用setImageLevel在它们之间切换。至少这是我的理解。这就是说,我不知道它为什么会改变规模。

  2. 我不知道为什么会这样。这可能是eclipse中ADT中xml编辑器/查看器的一个问题,我注意到许多事情在我的手机上显示得很好,但在我的编辑器上却令人难以置信。出于这个原因,我通常只是在xml中工作。

你想要完成什么?这可能会更容易回答你的问题。