Tag: 图片

有没有其他方式来显示url图像?

public class ImageDownloader extends AsyncTask { Context context; ImageView image; public ImageDownloader(ImageView image) { this.image = image; } protected void onPreExecute() { } protected Drawable doInBackground(String… urls) { InputStream is; Drawable d = null ; try { is = (InputStream)new URL(urls[0]).getContent(); d = Drawable.createFromStream(is, “Image”); return d; } catch (MalformedURLException e) { // TODO Auto-generated […]

BitmapFactory无法解码流:Android中的java.io.FileNotFoundException

我正在尝试从我的数据库在线获取图片,在我的“imagelink”中,这是我的表格中的数据字段,我把那些我上传的图片的url放在那里,但不幸的是它给了我这个错误。 02-08 15:05:29.432 14364-14364/com.example.jithea.testlogin E/BitmapFactory﹕ Unable to decode stream: java.io.FileNotFoundException: /http:/agustiniancampusevents.site40.net/newsDB/images/Visual%20Report%20Filipino%20Final-12%20copy.JPG: open failed: ENOENT (No such file or directory) 这是我在onPostExecute中的代码: protected void onPostExecute(String file_url) { // dismiss the dialog after getting all products pDialog.dismiss(); // updating UI from Background Thread runOnUiThread(new Runnable() { public void run() { /** * Updating parsed JSON data into ListView […]

java.lang.NullPointerException:尝试调用虚方法’java.lang.String android.net.Uri.getScheme()’

我正在尝试从图库和相机上传图像到服务器。当我选择图库中的图像上传到服务器其工作Perfactly.But当我选择相机捕获图像上传到服务器其崩溃并显示错误。 java.lang.NullPointerException: Attempt to invoke virtual method ‘java.lang.String android.net.Uri.getScheme()’ on a null object reference 在OnActivityResult。 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == PICK_IMAGE && resultCode == RESULT_OK && null != data) { Uri selectedImage = data.getData(); String[] filePathColumn = { MediaStore.Images.Media.DATA }; Cursor cursor = getContentResolver().query(selectedImage, […]

将缩放添加到Android中的imageview

我想在我的Android应用中添加缩放function。 我试过这段代码,但它只是在图像中间放大和缩小,我想在整个图像上应用缩放。 在同一图像中,我可以在图像的某些区域放置一个按钮吗? import android.content.Context; import android.graphics.Canvas; import android.graphics.drawable.Drawable; import android.view.KeyEvent; import android.view.View; public class Zoom extends View { private Drawable image; private int zoomControler=20; public Zoom(Context context) { super(context); image=context.getResources().getDrawable(R.drawable.icon); setFocusable(true); } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); //Here you can control the width and height of the […]

将部分图像绘制到屏幕(不加载所有内存)

我想要做的是在我选择的位置绘制一个图像的剪切屏幕。 我可以很容易地将其加载到位图中。 然后画一个小节。 但是当图像很大时,这显然会耗尽记忆力。 我的屏幕是一个表面视图。 有帆布等 那么如何在给定的偏移处绘制部分图像并resize。 无需将原始内容加载到内存中 我找到了一个沿着正确的方向看的答案,但它无法正常工作。 使用文件中的drawables。 下面的代码尝试。 除了它产生的随机resize外,它也是不完整的。 例: Drawable img = Drawable.createFromPath(Files.SDCARD + image.rasterName); int drawWidth = (int) (image.GetOSXWidth()/(maxX – minX)) * m_canvas.getWidth(); int drawHeight = (int)(image.GetOSYHeight()/(maxY – minY)) * m_canvas.getHeight(); // Calculate what part of image I need… img.setBounds(0, 0, drawWidth, drawHeight); // apply canvas matrix to move before […]

当xml的src不为null时,如何在android中将setImage设置为null?

我有这个xml 我想有时通过代码删除此图像。 我见过很多像这样的post,但在我的例子中是imageButton.setBackgroundResource(0); 保留我的xml布局中显示的默认图像。 你会如何以编程方式删除它? 我听说透明的颜色会让一些旧设备崩溃。 更新 setImageResource(0)也离开了xml的原始src而不是我想要的null

java.lang.OutOfMemoryError:在OOM之前分配分配失败

实际上,我正在尝试创建一个包含n个多媒体文件的应用程序,其中包括图像和video。 我的应用大小约为34MB ,我的资产大小约为60mb 。 当我在普通设备上加载应用程序时,我们没有遇到任何问题,但是具有2K resolutions的设备,如Nexus 6P, HTC, LG等,应用程序在进程中间崩溃并出现“内存不足”错误”。 我用这个产生了错误报告。 我也尝试过位图工厂。 同时我在数组方法中使用video。 有人可以帮忙解决这个问题吗? 致命exception:主程序:com.example.we.appname,PID:9353 java.lang.OutOfMemoryError:无法在android.graphics上的android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)的dalvik.system.VMRuntime.newNonMovableArray(Native Method)中分配带有1243880个空闲字节和1214KB的1660396字节分配。位于android.graphtent.decodeStream(BitmapFactory.java:620)的android.graphics.DetableFactory.decodeResourceStream(BitmapFactory.java:455)位于android.content.res.ResourcesImpl的android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1155) .loadDrawableForCookie(ResourcesImpl.java:720)位于android.content.res上的android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:571)android.content.res.Resources.loadDrawable(Resources.java:858)。在Android.graphics.drawable上的android.graphics.drawable.AnimationDrawable.TerFlate(动画可伸缩。爱情,动画可伸缩。 .DrawableInflater.inflat android.content.res.ResourcesImpl上android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1227)的android.graphics.drawable.Drawable.createFromXml(Drawable.java:1200)中的eFromXml(DrawableInflater.java:130) .loadDrawableForCookie(ResourcesImpl.java:715)位于android.content.res.Resources上的android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:571)android.content.Context的android.content.res.Resources.getDrawable(Resources.java:771)。 android.app.Activity.performCreate的com.example.kq.meettheshps.Score_Card.onCreate(Score_Card.java:58)上的android.view.View.setBackgroundResource(View.java:18228)中的getDrawable(Context.java:525) (Activity.java:6679)在Android.app.ActivityThread.perleLaunchActivity(ActivityThread.java:2618)的android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)android.app.ActivityThread.handleLaunchActivity(ActivityThread.java: 2726)android.app.ActivityThread.-wrap12(ActivityThread.java)在android.app.ActivityThread $ H.handleMessage(ActivityT) hread.java:1477)android.app.Handler.dispatchMessage(Handler.java:102)android.app.Looper.loop(Looper.java:154)android.app.ActivityThread.main(ActivityThread.java:6119) )at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:886)的com.android.internal.os.ZygoteInit.main(ZygoteInit)中的java.lang.reflect.Method.invoke(Native Method)的.java:776)

Android发布高分辨率图像耗尽内存

美好的一天开发者。 我正忙着为Android上传应用程序中的图像。 我也让它工作(代码将在下面)。 但是当我发送大图像(1000万像素)时,我的应用程序因内存exception而崩溃。 对此的解决方案是使用压缩,但如果我想发送全尺寸图像怎么办? 我想也许有一些关于流的东西,但我并不喜欢溪流。 也许urlconnection可能会有所帮助,但我真的不知道。 我给文件名称文件[0到9999] .jpg带有图像日期的post值称为Filedata我为post值dropboxid提供了一个UID 下面的代码有效,但我想解决我的问题,阻止我发送高分辨率图像。 亲切的问候 try { ByteArrayOutputStream bos = new ByteArrayOutputStream(); bitmap.compress(CompressFormat.JPEG, 100, bos); byte[] data = bos.toByteArray(); HttpPost postRequest = new HttpPost(URL_SEND); ByteArrayBody bab = new ByteArrayBody(data, “File” + pad(random.nextInt(9999) + 1) + “.jpg”); MultipartEntity reqEntity = new multipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE); reqEntity.addPart(“Filedata”, bab); reqEntity.addPart(“dropboxId”, new StringBody(URLEncoder.encode(uid))); postRequest.setEntity(reqEntity); HttpResponse response […]

以编程方式更改联系人图片

我有一张照片,存放在Android手机中。 我希望能够改变联系人的图片。 到目前为止我所做的是启动联系人选择器,让用户选择联系人,然后我获得所选联系人的URI。 从这个联系人,我可以得到相关的rawContact,我使用这个代码 。 Uri rawContactPhotoUri = Uri.withAppendedPath( ContentUris.withAppendedId(RawContacts.CONTENT_URI, rawContactId), RawContacts.DisplayPhoto.CONTENT_DIRECTORY); try { AssetFileDescriptor fd = getContentResolver().openAssetFileDescriptor(rawContactPhotoUri, “rw”); OutputStream os = fd.createOutputStream(); os.write(photo); os.close(); fd.close(); } catch (IOException e) { // Handle error cases. } 问题是,AssetFIleDescriptor总是空的(当我调用它的长度时,我们总是得到-1)。 我不是要求整个解决方案,只是一些可以帮助我实现这一目标的方法。 我似乎无法在StackOverflow上找到这个问题,所以任何帮助都将不胜感激。 编辑 当我们提出问题时,我们总能找到解决方案。 我想与其他人分享 所以我放弃了android链接并找到另一个: http : //wptrafficanalyzer.in/blog/programatically-adding-contacts-with-photo-using-contacts-provider-in-android-example/ 图片选择器返回所选联系人的Uri,因此您可以获取它的Contact._ID: // This is onActivityResult final Uri uri = […]

将负片转换为正片

我有旧的底片,我扫描到我的电脑上。 我想写一个小程序将负图像转换为正状态。 我知道有几个图像编辑器应用程序,我可以使用它来实现这种转换,但我正在研究如何通过一个小应用程序操纵像素自己转换它们。 任何人都可以给我一个良好的开端吗? 如果可能的话,示例代码也将非常受欢迎。