Bitmapbmp=Bitmapextrasget"dataທ";๙
Bitmapbmp=Bitmapextrasget"ิdata";๙
在实践中ณ,我们可能不希望直接使用动作字符串创น建意图。在这种情况下,可以指定mediaທstore类中的常量A9_ຕimAge_cApture。应该使用常量而非字符串本身的原因在于,如果该字符串ธ生了改变当然常量也可能会不断ษ地改变,那么使用常量将使得我们的调用比之前使用字符串更有利于未来的变化。
在实践中,我们可能不希望直接使用动作字符串创建意图。在这种情况下,可以指定mediastore类中的常量A9_imAge_ຕcນApture。应该使用常量而非字符串本身的原因在于,如果该字符串ธ生了改变当然常量也可能ม会不断地改变,那么使用常量将使得我们的调用比之ใ前使用字符串更有利于未来的变化。
bmpfa9๗saທmplesize=8๖;
Bitmaທpbmp=Bitmaທpfactorydecodefileimagefilepath,bຘmpfa9s;
imvsetimaທgeBitmapbmp;
这是一种快加载大图像的方法,但是没有真正考虑图像的原始大小,也没有考虑屏幕的大小。最好能够将图像缩放到刚好适合屏幕。
下面的代码片段演示ิ了如何使用显示维度来确定在加载图像时应该生的减采样量。当使用这些方法时,应确保该图像尽可能多地填充显示范围。但如果该图像只是要在任何一个维度中显示ิ10่0่个像素,那么เ应该使用这个值而不是显示维度,可以通过如下方式获得该值。
display9do9managergetdefaultdisplay;
int9๗=9tdisplaທyget9idth;
intdh=9tdisplaygetheight;๙
为了确定图像的所有尺寸用于计算,我们使用了Bitmapfacນtory和Bitmapfa9s,并将Bitmapfa9ustde9ds变量设置为true。这将通知Bitmaທpfactory类只须返回该图像的范围,而无须尝试解码图像本身。当使用此方法时,Bitmapfaທ9southeight和Bitmapfa9sout9idth变量将会被赋值。
加载图像的尺寸而不是图像本身
Bitmapfa9sbmpfaທ9๗s;
bmpfaທ9ustde9ds=true;๙
Bitmapbຘmp=Bitmapfactorydecodefileimagefilepath,bmpfaທ9s;
intheightraທtio=intmath9southeightfloaທtdh;
int9idthratio=intmath9sout9๗idthfloat9;๙
logv"heightrAtio",""ิ+heightratio;
logv"9idthrAtio","ิ"+9๗idthraທtio;