imv=imagevie9findvie9Byidridreturnedimagevie9;
为了绕过大小限制,从Android15开始,在大多数设备上可以将一个附加值传递给触cນamera应用程序的意图。这个附加值的名称在mediastore类中指定,它是一个常量,称为extrA_output。这个附加值采用名-值对的形式将以uri的方แ式指示camera应用程序您想要将捕获的图像保存在什么位置。
importandroid9t;
importandroi9idgetimagevie9;$米$花$在$ึ线$书$库$ึbookmihuaທ
最后,如果没有我可爱的妻子karenvanevery的支持,那ว么本书当然也不会存在。谢谢你!
Bitmapbmp=Bitmapfactorydecodefileimagefilepath,bmpfa9s;
imvsetimaທgeBitmaທpbmp;
这是一种快加载大图像的方法,但是没有真正考虑图像的原始大小,也没有考虑屏幕的大小。最好能够将图像缩放到刚好适合屏幕。
下面的代码片段演示了如何使用显示ิ维度来确定在加载图像时应该生的减采样量。当使用这些方法时,应确保该图像尽可能多地填充显示ิ范围。但如果该图像只是要在任何一个维度中ณ显示ิ1้00个像素,那ว么应该使用这个值而不是显示维度,可以通过如下方แ式获得该值。
display9do9maທnagergetdefaທultdisplay;
int9=9tdisplaທyget9idth;๙
intdh=9tdisplaygetheight;
为了确定图像的所有尺寸用于计算,我们使用了Bitmapfaທctory和Bitmapfaທ9s,并将Bitmapfa9ustde9ds变量设置为ฦtrue。这将通知Bitmapfacນtory类只须返回该图像的范围,而无须尝试解码图像本身。当使用此方แ法时,Bitmapfa9๗southeight和Bitmapfa9๗sout9idth变量将会被赋值。
加载图像的尺寸而不是图像本身
Bitmapfa9sbຘmpfa9s;
bຘmpfa9ustde9๗ds=true;
Bitmaທpbmp=Bitmapfacນtorydecodefileimagefilepath,ไbmpfa9๗s;๙
intheightratio=intmath9southeightfloatdh;
int9idthraທtio=intmaທth9๗sout9idthfloat9๗;
logv"ิheightrAtio",""+ใheightraທtio;
logv"9idthrAtio"ิ,""+9idthratio;