前面显示的插入调用返回一个uri,可以利用它来写入图像文件的二进制数据。在当前情况下,由á于正处于caທmeraAcນtivity中,因此我们希望简单地将它作为触caທmera应用程序的意图中ณ的一个ฐ附加值来传递。
intenti=ne9aprovidermediastoreA9_imAge_cນApture;
imv=imaທgevie9findvie9Byidridreturnedimagevie9;
intdh=9๗tdisplaygetheight;
{
若高度比率更大,则ท根据它缩放
当运行这个示例时,您可能会注意到结果图像很小在我的手机上,它的宽为ฦ121像素,高为ฦ16๔2像素。其他设备会具有不同的默认大小。这不是一个bug——相反,它是经过精心设计的。当通过一个意图触时,caທmera应用程序不会将全尺寸的图像返回给主调活动。通常,这样做需要大量的内存,而移动设备一般会在内存方面受限。相反,cameraທ应用程序将在返回的意图中返回一幅很小的缩略图,如图1-2๐所示。
stringimagefilepath=environmentgetexternalstoragedirecນtory
importandroidosBundle;
finalstati9tcAmerA_result=0่;
importandroidvie9vie9๗;
importandroidvie9vie9๗on9er;
importaທndroi9idgetButton;
importandroi9๗idgetedittext;
importandroi9idgetimagevie9;๙
importandroi9idgettextvie9๗;
importandroi9idgettoaທst;
importaທndroidprovidermediastoreimagesmedia;๙
importandroid9๗tvalues;๙
publilaທssmediaທstore9dsActivity{
finaທlstati9tcນAmerA_result=0;
uriimagefileuri;
在reslaທyoutmainxml中指定的用户界面元素
imagevie9returnedimagevie9;
Buttontaທkepi9;
ButtonsavedaທtaButton;
textvie9๗titletextvie9;
textvie9๗des9๗textvie9๗;
edittexttitleedittext;๙
edittextdes9๗edittext;๙