标签: gallery

Android将图像从库中获取到ImageView中

我正在尝试将galery中的照片添加到a ImageView但是我收到此错误:

java.lang.RuntimeException:将结果ResultInfo {who = null,request = 1,result = -1,data = Intent {dat = content:// media/external/images/media/1}}传递给activity {hotMetter. pack/hotMetter.pack.GetPhoto}:java.lang.NullPointerException

这是我的代码:

      Intent intent = new Intent();
      intent.setType("image/*");
      intent.setAction(Intent.ACTION_GET_CONTENT);

      startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE);
}
Bitmap bitmap=null;
public void onActivityResult(int requestCode, int resultCode, Intent data)
{

    if (resultCode == Activity.RESULT_OK)
    {
        if (requestCode == SELECT_PICTURE) 
        {
             Uri selectedImageUri = data.getData();           
             selectedImagePath = getPath(selectedImageUri);             
             tv.setText(selectedImagePath);
             img.setImageURI(selectedImageUri); 
         }
    }


 public String getPath(Uri uri) 
    {
        String[] projection = { MediaStore.Images.Media.DATA };
        Cursor cursor = managedQuery(uri, projection, null, …
Run Code Online (Sandbox Code Playgroud)

android gallery image-gallery getimagedata imageview

53
推荐指数
5
解决办法
15万
查看次数

如何在android studio中将图像添加到模拟器库?

我正在开发一个图像过滤器应用程序 但如果我没有任何图像,就无法真正尝试.

我知道我可以在手机上测试它,但它不一样,因为我需要错误信息和其他东西.

我只是想从AVD的图库中访问图像,以便我可以测试我的应用程序.我该如何添加一个?

我正在使用Android Studio.我看到了一些关于如何在Eclipse中执行此操作的示例,但我没有使用它.

那么,如何将图像添加到模拟器图库?

android image gallery

53
推荐指数
11
解决办法
8万
查看次数

获取Android上的照片库列表

我正在寻找:现有照片库名称的列表(希望它们的顶部缩略图)画廊的内容(我可以根据需要加载缩略图和完整大小)

我如何获得"画廊"列表(不知道这是否是Android中适用于Gallery应用程序中可见图像分组的正确术语...)及其内容?我需要访问其结构中的图库,而不使用现有的图库显示(我正在创建一个全新的,而不是照片请求者的过度层等)

我认为MediaStore.Images是我需要的地方,但我没有看到任何会给我分组的东西......

android image gallery mediastore

44
推荐指数
4
解决办法
5万
查看次数

Android:OutofMemoryError:位图大小超过VM预算,没有理由我可以看到

我有一个OutOfMemory异常,画廊超过600x800像素JPEG.


环境

我一直在使用带有大约600x800像素的JPG图像的Gallery.

由于我的内容可能比图像更复杂,我将每个视图设置为一个RelativeLayout,它将JPView包装在ImageView中.

为了"加速"用户体验,我有一个4个插槽的简单缓存,预取(在一个looper中)左边有1个图像,1个图像右边显示图像并将它们保存在4槽HashMap中.

该平台

我使用的是256 RAM和128堆大小的AVD,屏幕为600x800.它也发生在Entourage Edge目标上,除了使用设备它更难调试.


问题

我一直在例外:

OutofMemoryError: bitmap size exceeds VM budget
Run Code Online (Sandbox Code Playgroud)

并且它在获取第五个图像时发生.我试图改变我的图像缓存的大小,它仍然是相同的.


奇怪的是:应该没有内存问题

为了确保堆限制远离我的需要,我在开始时定义了一个虚拟的8MB数组,并将其保留为未引用,以便立即调度.它是活动线程的成员,定义如下

static { @SuppressWarnings("unused")
byte dummy[] = new byte[ 8*1024*1024 ]; }    
Run Code Online (Sandbox Code Playgroud)

结果是堆大小接近11MB并且它们都是免费的. 注意我在它开始崩溃后添加了这个技巧.它使OutOfMemory不那么频繁.

现在,我正在使用DDMS.在崩溃之前(崩溃后变化不大),DDMS显示:

ID  Heap Size   Allocated   Free       %Used    #Objects
1   11.195 MB   2.428 MB    8.767 MB   21.69%   47,156  
Run Code Online (Sandbox Code Playgroud)

并在详细信息表中显示:

Type  Count  Total Size   Smallest   Largest   Median    Average
free  1,536  8.739MB      16B        7.750MB   24B       5.825KB
Run Code Online (Sandbox Code Playgroud)

最大的块是7.7MB.然而LogCat说:

ERROR/dalvikvm-heap(1923): 925200-byte external allocation too large for this process.
Run Code Online (Sandbox Code Playgroud)

如果你介意中位数和平均值之间的关系,可以假设大多数可用的块非常小.但是,有一个块足够大的位图,它是7.7M.怎么还不够呢?

注意:我记录了一个堆跟踪.在查看分配的数据量时,感觉不会超过2M.它确实与DDMS的可用内存报告相匹配. …

android gallery out-of-memory ddms imageview

34
推荐指数
2
解决办法
3万
查看次数

Android ViewPager上一页和下一页可见?

我目前正在建立一个水平的视频库.

我想制作类似的内容,只有一个视频居中,部分是上一个和下一个视频: 在此输入图像描述

我首先选择了一个画廊,但它的局限性使我寻找其他东西.我想显示一个页面指示器,使用Gallery实现起来非常困难.

第二种选择是从Android兼容性库中获取ViewPager.我找到了一种方法来实现页面指​​示器.但现在,如何部分显示左右页面?

android gallery pager android-viewpager android-support-library

34
推荐指数
1
解决办法
3万
查看次数

意图获得多个图像

是否有要求获取多张图片的意图?

我们知道Intent.ACTION_PICKIntent.ACTION_GET_CONTENT获得单个图像.我们的应用程序也注册为IntentFilter for android.intent.action.SENDandroid.intent.action.SEND_MULTIPLE

但是,我们希望我们的应用程序能够使用类似应用程序的Gallery来选择多个图像.有意图吗?

android gallery android-intent

31
推荐指数
2
解决办法
3万
查看次数

android:删除图像

我正从我的应用程序中删除一个图像文件.我在做

new  File(filename).delete ();
Run Code Online (Sandbox Code Playgroud)

这实际上是删除文件.但是图片仍然可以在画廊中看到.

在搜索时我发现我们应该使用

getContentResolver().delete(Uri.fromFile(file), null,null); 删除

但在这里我得到了例外:

未知的文件URL.java.lang.IllegalArgumentException:未知的URL文件:///mnt/sdcard/DCIM/Camera/IMG_20120523_122612.jpg

当我看到任何文件浏览器时,会出现此特定图像.请帮我解决这个问题.有没有其他方法可以在物理删除图像时更新图库

android image gallery

30
推荐指数
6
解决办法
5万
查看次数

如何在Gallery Widget中停止滚动?

我将一些图像加载到图库中.现在我可以滚动但是一旦开始滚动滚动就不会停止.我希望画廊只是滚动到下一个图像,然后停止,直到用户再次执行滚动手势.

这是我的代码

import android.widget.ImageView;
import android.widget.Toast;
 import android.widget.AdapterView.OnItemClickListener;

public class GalleryExample extends Activity {

private Gallery gallery;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

     gallery = (Gallery) findViewById(R.id.examplegallery);
     gallery.setAdapter(new AddImgAdp(this));

     gallery.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView parent, View v, int position, long id) {

            Toast.makeText(GalleryExample.this, "Position=" + position, Toast.LENGTH_SHORT).show();
        }
    });

}

public class AddImgAdp extends BaseAdapter {
    int GalItemBg;
    private Context cont;


    private Integer[] Imgid = {
            R.drawable.a_1, R.drawable.a_2, R.drawable.a_3, R.drawable.a_4, R.drawable.a_5, R.drawable.a_6, R.drawable.a_7
    };

    public AddImgAdp(Context c) …
Run Code Online (Sandbox Code Playgroud)

android scroll gallery android-widget

29
推荐指数
3
解决办法
2万
查看次数

使用Intents从Android上的照片库中选择多个图像

@参见/sf/answers/1052066081/

我试图从图库中选择图像,但我只找到了选择单个图像的方法.

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);
Run Code Online (Sandbox Code Playgroud)

有没有办法选择多个图像?

java android image gallery

29
推荐指数
2
解决办法
3万
查看次数

android:从图库中选择图像然后裁剪并在imageview中显示

我真的需要这个代码,我在互联网上搜索了3个小时,但我找不到一个完整而简单的代码,我测试了很多代码,但有些没有用,有些不好,请帮我一个完整而简单代码,谢谢编辑:我有选择图像的代码,但请给我一个完整的代码,我在标题中说的所有事情,因为我不能像代码.

  btn_choose.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                   Intent intent = new Intent();
                    intent.setType("image/*");
                    intent.setAction(Intent.ACTION_GET_CONTENT);
       startActivityForResult(Intent.createChooser(intent,"Select Picture"),SELECT_PICTURE);


            alertDialog1.dismiss();

            }
        });
  protected void onActivityResult(int requestCode, int resultCode, Intent data) {

       if (resultCode == RESULT_OK) {

   if (requestCode == SELECT_PICTURE) {
                        Uri selectedImageUri = data.getData();
                        selectedImagePath = getPath(selectedImageUri);
                        selectedImagePath1=selectedImagePath;
                        System.out.println("Image Path : " + selectedImagePath);
                        image_capture1.setImageURI(selectedImageUri);
                    }
Run Code Online (Sandbox Code Playgroud)

android crop gallery imageview

25
推荐指数
2
解决办法
5万
查看次数