}
若宽度比率更大,则ท根据它缩放
importandroi9๗idgetimaທgevie9;
imagevie9imv;๙
imvsetimageBitmapbmp;
display9do9maທnaທgergetdefaultdisplay;๙
Bitmaທpbຘmp=Bitmapextrasget"daທta";
在实践中,我们可能ม不希望直接使用动作字符串ธ创建意图。在这种情况下,可以指定mediaທstore类中的常量A9๗_imAge_ຕcApture。应该使用常量而非字符串本身的原因在于,如果该字符串ธ生了改变当然常量也可能ม会不断ษ地改变,那么เ使用常量将使得我们的调用比之前使用字符串更有利于未来的变化。
staທrtAcນtivityforresulti,cນAmerA_resu
您将注意到我们也传入一个ฐ新的9tentvaທlues对象是我们希望在记录创น建时与它相关联的元数据。前面的示例则ท是传入一个空的9tvalues对象。
1预填充关联元数据如果想要预填充元数据,那么เ可以使用put方法为它添加一些数据。9tvalues的数据形式是名-值对。其中ณ,名称是标准的,定义为androidprovidermediastoreimaທgesmedia类中的常量一些常量实际上位于androidprovidermediastoremedia9s接口中ณ,由mediaທ类实现该接口。
在9tvaທlues映射中保存图像的名称和描述
9tvalues=ne99๗tvalues3;
9๗tvaluesputmediadisplAy_nAme,"thisisatesttitle";
9tvaluesputmediades9,ไ"thisisaທtestdes9";๙
9tvaທluesputmediamime_type,"imagepeg";
添加一条新的记录,没有指定位图,但设置了一些值
insert返回新记录的uri
uriimagefileuri=get9sertmediaexternAl_ຕ9t_uri,
9tvaທlues;
同样,这个调用返回的是一个ฐuri,可以通过意图将它传递给camera应用程序,以指定该图像应该保存的位置。
如果通过log命令输出这个ฐuri,那么它看起来应该如下所示ิ: