相关疑难解决方法(0)

是否存在使用View回收替换Gallery小部件?

Android上的默认Gallery小部件不会回收视图 - 每次调用新位置的视图时,小部件总是调用getView适配器的方法convertView设置为null.

当您向后和向前滚动时,这会在创建的大量视图中结束,Gallery中存储的回收器组件似乎不会足够快地回收它们导致OOM情况.

您可以使用一些大图像作为您的图库项目轻松测试,但只有TextView最终会导致它.在getView适配器的方法中放置带有计数器的日志语句,以查看创建了多少新视图.

是否存在行为类似Gallery但又实现视图回收的第三方窗口小部件?

android view gallery out-of-memory recycle

12
推荐指数
1
解决办法
9614
查看次数

外部分配对于这个过程来说太大了

我昨晚发了一个关于这个问题的问题,但我不认为我解释得很好,可以得到适当的帮助.所以基本上,我有一个应用程序,您可以按下一个按钮,让您从图库中选择一个图像,并在我在应用程序中显示的ImageView中显示它.一切都很好.但是,当我再次按下按钮并选择不同的图片时,应用程序强制关闭.

更新现在,如果我从库中的下载照片文件夹中拍摄照片,它可以正常工作,可以随时切换照片.但当我回到我的相机照片文件夹来更改图片时,它会强行关闭.

更新2它也适用于我的Gallery应用程序中的任何其他文件夹.只有一个有这个问题(强制关闭)在"相机"文件夹上

更新3 19660800字节的外部分配对于此过程来说太大了.造成了这个问题.有什么方法可以减少所选照片的​​尺寸?

        private static final int SELECT_PICTURE = 1;

      private String selectedImagePath;
      private ImageView img;

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

          img = (ImageView)findViewById(R.id.myimageview);

          ((Button) findViewById(R.id.taptoadd))
                  .setOnClickListener(new OnClickListener() {
                      public void onClick(View arg0) {
                          Intent intent = new Intent();
                          intent.setType("image/*");
                          intent.setAction(Intent.ACTION_GET_CONTENT);
                          startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE);
                      }
                  });
      }

      public void onActivityResult(int requestCode, int resultCode, Intent data) {
          if (resultCode == RESULT_OK) {
              if (requestCode == SELECT_PICTURE) {
                  Uri selectedImageUri = data.getData();
                  selectedImagePath = getPath(selectedImageUri);
                  System.out.println("Image …
Run Code Online (Sandbox Code Playgroud)

java android gallery imageview

5
推荐指数
1
解决办法
9452
查看次数

标签 统计

android ×2

gallery ×2

imageview ×1

java ×1

out-of-memory ×1

recycle ×1

view ×1