使用Drawable和Image Resource时有不同的渲染? ImageButton - Android

时间:2012-01-30 13:44:02

标签: android imagebutton

我在这里有些奇怪的事。我有两种不同的方式加载相同的图像:

以下是代码:

     if(imageAddress.startsWith("drawable")){
         btn.setImageResource(this.getResources().getIdentifier(imageAddress, null, this.getPackageName()));
     }else{
         btn.setImageURI(Uri.parse(new File(imageAddress).toString()));
     }

如上所示,我测试图像地址是否以“drawable”开头,如果是,则将图像加载为drawable。如果没有,那么它是来自SD卡的图像,然后我通过它加载它。

以下是ImageButton的代码:

    <ImageButton  xmlns:android="http://schemas.android.com/apk/res/android"
        android:background="@drawable/roundcorners" 
        android:scaleType="centerInside"
        android:cropToPadding="false"
        android:paddingLeft="5dp"
        android:paddingRight="5dp"
        android:paddingBottom="10dip"
        android:layout_height="fill_parent" 
        android:layout_width="fill_parent"
        android:layout_weight=".95">
    </ImageButton>

以下是结果:

Image when loaded AS DRAWABLE 上图显示了加载AS DRAWABLE时的ImageButton(imageAddress =“drawable / eu_quero”)

Image when loaded through IMAGEURI 上图显示ImageButton加载THROUGH IMAGE URI(imageAddress =“/ mnt/sdcard/myapp/images/eu_quero.png”)

我需要的是图片大小相同,无论我是将其加载为drawable还是通过ImageURI。

任何人都可以帮助我吗?

重要提示:图像完全相同!!!相同的尺寸!!

1 个答案:

答案 0 :(得分:0)

你能尝试实现android:margin_left而不是padding:left?