0
FirebaseRecyclerAdapterとFirebaseRecyclerAdapterで画像を表示すると、ピカソが極端に遅くなります、recyclerviewのfirebaseから画像を表示する方法が改善されましたか?FirebaseRecyclerAdapterとピカソでFirebaseから画像をレンダリングすると極端に遅くなります
public class TileContentFragment extends Fragment {
private FirebaseAuth mFirebaseAuth;
private FirebaseUser mFirebaseUser;
private DatabaseReference mDatabase;
RecyclerView recyclerView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
// Initialize Firebase Auth and Database Reference
mFirebaseAuth = FirebaseAuth.getInstance();
mFirebaseUser = mFirebaseAuth.getCurrentUser();
mDatabase = FirebaseDatabase.getInstance().getReference("Items");
recyclerView = (RecyclerView) inflater.inflate(R.layout.recycler_view, container, false);
recyclerView.setHasFixedSize(true);
FirebaseRecyclerAdapter<Item, BlogViewHolder> firebaseRecyclerAdapter =new FirebaseRecyclerAdapter<Item, BlogViewHolder>(
Item.class,
R.layout.item_tile,
BlogViewHolder.class,
mDatabase) {
@Override
protected void populateViewHolder(BlogViewHolder viewHolder, Item model,int position) {
viewHolder.setTitle(model.getName());
viewHolder.setImage(getApplicationContext(), model.getProfilePic());
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
// Set padding for Tiles
int tilePadding = getResources().getDimensionPixelSize(R.dimen.tile_padding);
recyclerView.setPadding(tilePadding, tilePadding, tilePadding, tilePadding);
recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 2));
return recyclerView;
}
//View Holder For Recycler View
public static class BlogViewHolder extends RecyclerView.ViewHolder {
View mView;
public BlogViewHolder(View itemView) {
super(itemView);
mView= itemView;
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.androidsquad.space/"));
Intent browserChooserIntent = Intent.createChooser(browserIntent , "Choose browser of your choice");
v.getContext().startActivity(browserChooserIntent);
}
});
/******** For More Android Tutorials .. Download "Master Android" Application From Play Store Free********/
}
public void setTitle(String title){
TextView post_title = (TextView)mView.findViewById(R.id.tile_title);
post_title.setText(title);
}
public void setImage(Context ctx , String image){
ImageView post_image = (ImageView)mView.findViewById(R.id.tile_picture);
// We Need TO pass Context
Picasso.with(ctx).load(image).into(post_image);
} }}
を使用して画像をリサイズ自動的に試してみてくださいフルサイズで読み込むのではなく、デフォルトでイメージをダウンサンプリングします。 –