2017-08-25 110 views
1

我对android开发非常陌生,我一直在尝试创建一个图片库应用程序。除了当我滑动显示下一个或上一个图像时,一切都工作正常,没有任何显示。我该如何解决?下一张图片不会在'ImageSwitcher'中刷卡显示

public class PhotosActivity extends AppCompatActivity { 
    int int_position; 
    private GridView gridView; 
    GridViewAdapter adapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_image_gallery); 
     gridView = (GridView)findViewById(R.id.gv_folder); 
     int_position = getIntent().getIntExtra("value", 0); 
     adapter = new GridViewAdapter(this, al_images,int_position); 
     gridView.setAdapter(adapter); 

     gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       String abc = "file://" + al_images.get(int_position).getAl_imagepath().get(position); 

       Intent i = new Intent(getApplicationContext(), FullImageActivity.class); 
       i.putExtra("id", position); 
       i.putExtra("abc",abc); 
       startActivity(i); 
      } 
     }); 
    } 
} 

回答

0

当我运行你的代码时,我得到了Nullpointerexeption。所以我用

try { 
     Intent i = getIntent(); 

     // Selected image id 
     position = i.getExtras().getInt("id"); 
     Bundle extras = getIntent().getExtras(); 
     String value = extras.getString("abc"); 

     Glide.with(FullImageActivity.this) 
       .load(value) 
       .listener(new RequestListener<String, GlideDrawable>() { 
        @Override 
        public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { 
         return false; // important to return false so the error placeholder can be placed 
        } 

        @Override 
        public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { 
         return false; 
        } 
       }) 

       .into(images); 
    } catch (NullPointerException n) { 
     n.printStackTrace(); 
    } 

并在5个或6挥笔我能够查看Images.As你的问题问,你是不是能看到图像,所以问题是,缩略图不exist.As在我日志为每个非可视缩略图我得到这个错误

I/System.out: resolveUri failed on bad bitmap uri: content://media/external/images/thumbnails/11

希望这可能帮助。

ps:等待烤面包完成后再下一次刷卡清理。

+1

即使在10次刷卡之后,我仍然无法查看图像,根据您的回答更新了我的代码,并且我之前没有收到任何异常,还有其他的java文件也没有包含在本文中作为不适合我的代码的问题是在这个活动中,我仍然包含了一个更多的java文件,并更新了我的问题。此活动负责显示缩略图 –

+0

您是否已将您的清单文件包含此权限<使用权限android:name =“android.permission.READ_EXTERNAL_STORAGE”/>。 –

+1

<使用权限android:name =“android.permission.WRITE_MEDIA_STORAGE”/> <使用权限android:name =“android.permission。 READ_EXTERNAL_STORAGE“/> <使用权限android:name =”android.permission.MEDIA_CONTENT_CONTROL“/> <使用权限android:name =”android.permission.INTERNET“/> ....我包括和所有这些权限太 –