我想从图库中选择一个图像在我的应用程序中.也就是说,如果我启动图库并选择图像,裁剪窗口应该像我们从iPhone中选择图像时那样.是否可以在Android中使用.
我发现了一个在android中裁剪图像的教程,但似乎不是我想要的方式.
http://www.coderzheaven.com/2011/03/15/crop-an-image-in-android/
我有代码来裁剪图像,如下所示:
public void doCrop(){
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setType("image/");
List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent,0);
int size = list.size();
if (size == 0 ){
Toast.makeText(this, "Cant find crop app").show();
return;
} else{
intent.setData(selectImageUri);
intent.putExtra("outputX", 300);
intent.putExtra("outputY", 300);
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("scale", true);
intent.putExtra("return-data", true);
if (size == 1) {
Intent i = new Intent(intent);
ResolveInfo res = list.get(0);
i.setComponent(new ComponentName(res.activityInfo.packageName, res.activityInfo.name));
startActivityForResult(i, CROP_RESULT);
}
}
}
public void onActivityResult (int requestCode, int resultCode, Intent dara){
if (resultCode == RESULT_OK){
if …Run Code Online (Sandbox Code Playgroud) 我想将图像设置为联系人图标.该图像存储在缓存中.这是我的代码 -
Intent myIntent = new Intent();
myIntent.setAction(Intent.ACTION_ATTACH_DATA);
myIntent.setType("image/jpeg");
myIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(getApplicationContext().getCacheDir()
.getAbsolutePath()
+ "/" + fileName));
startActivityForResult(Intent.createChooser(myIntent, "Set As"),
200);
Run Code Online (Sandbox Code Playgroud)
这段代码给了我选项 - 联系人图标,壁纸.当我选择联系人图标时,联系人列表正在打开.当我从联系人列表中选择任何联系人时,该应用程序正在崩溃.
日志是 -
E/AndroidRuntime(15004): FATAL EXCEPTION: main
E/AndroidRuntime(15004): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { dat=content://com.android.contacts/contacts/lookup/0r2-5C48544A48463C46323C2C/2 (has extras) }} to activity {com.android.contacts/com.android.contacts.AttachImage}: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.camera.action.CROP (has extras) }
E/AndroidRuntime(15004): at android.app.ActivityThread.deliverResults(ActivityThread.java:3515)
E/AndroidRuntime(15004): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3557)
E/AndroidRuntime(15004): at android.app.ActivityThread.access$2800(ActivityThread.java:125)
E/AndroidRuntime(15004): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2063)
E/AndroidRuntime(15004): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(15004): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(15004): at android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime(15004): …Run Code Online (Sandbox Code Playgroud) 我正在开发一个我需要裁剪图像的应用程序.但是这个图像裁剪应该只在我的活动上进行,所以我不能使用android的默认图像裁剪概念,其中图像将进入用户可以裁剪的另一个视图.
我需要的是创建自定义图像裁剪器矩形.
我从长期尝试这个但没有运气.如果有任何身体可以提供帮助,我们将感
谢谢