Advertisement
Guest User

Untitled

a guest
Apr 24th, 2018
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.29 KB | None | 0 0
  1. package com.example.filip.unibook;
  2.  
  3. import android.content.Context;
  4. import android.content.res.Resources;
  5. import android.graphics.Bitmap;
  6. import android.graphics.BitmapFactory;
  7. import android.graphics.drawable.Drawable;
  8. import android.media.Image;
  9. import android.support.annotation.NonNull;
  10. import android.view.LayoutInflater;
  11. import android.view.View;
  12. import android.view.ViewGroup;
  13. import android.widget.BaseAdapter;
  14. import android.widget.ImageView;
  15. import android.widget.RelativeLayout;
  16. import android.widget.TextView;
  17.  
  18. import com.google.android.gms.tasks.OnCompleteListener;
  19. import com.google.android.gms.tasks.OnFailureListener;
  20. import com.google.android.gms.tasks.OnSuccessListener;
  21. import com.google.android.gms.tasks.Task;
  22. import com.google.firebase.auth.FirebaseAuth;
  23. import com.google.firebase.auth.FirebaseUser;
  24. import com.google.firebase.firestore.DocumentReference;
  25. import com.google.firebase.firestore.DocumentSnapshot;
  26. import com.google.firebase.firestore.FirebaseFirestore;
  27. import com.google.firebase.storage.FirebaseStorage;
  28. import com.google.firebase.storage.StorageReference;
  29.  
  30. import org.w3c.dom.Text;
  31.  
  32. import java.sql.Blob;
  33. import java.util.Date;
  34.  
  35. /**
  36. * Created by Ludvig on 2018-03-12.
  37. */
  38.  
  39. public class MyMessagesAdapter extends BaseAdapter {
  40.  
  41. LayoutInflater mInflator;
  42. String[] items;
  43. String[] chatids;
  44. Blob[] blobs;
  45. String[] userid;
  46. Context context;
  47. FirebaseAuth mAuth = FirebaseAuth.getInstance();
  48. private FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
  49. FirebaseStorage storage = FirebaseStorage.getInstance();
  50.  
  51.  
  52. public MyMessagesAdapter(Context c, String[] items, String[] chatids, String[] userid, Blob[] blobs) {
  53. this.items = items;
  54. this.chatids = chatids;
  55. this.userid = userid;
  56. if(blobs != null) {
  57. this.blobs = blobs;
  58. }
  59. this.context = c;
  60. mInflator = (LayoutInflater) c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  61. }
  62.  
  63. @Override
  64. public int getCount() {
  65. return items.length;
  66. }
  67.  
  68. @Override
  69. public Object getItem(int i) {
  70. return items;
  71. }
  72.  
  73. @Override
  74. public long getItemId(int i) {
  75. return i;
  76. }
  77.  
  78. @Override
  79. public View getView(int i, View view, ViewGroup viewGroup) {
  80. View v = mInflator.inflate(R.layout.mymessages_listview, null);
  81. TextView nameTxt = v.findViewById(R.id.txtUserTalkingTo);
  82. TextView chatId = v.findViewById(R.id.txtChatId);
  83. final ImageView imageView = v.findViewById(R.id.ivMessages);
  84.  
  85. String name = items[i];
  86. String ids = chatids[i];
  87. String user = userid[i];
  88.  
  89. nameTxt.setText(name);
  90. chatId.setText(ids);
  91.  
  92. final DocumentReference docRef = rootRef.collection("Users").document(user);
  93. docRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
  94. @Override
  95. public void onComplete(@NonNull Task<DocumentSnapshot> task) {
  96. if (task.isSuccessful()) {
  97. DocumentSnapshot doc = task.getResult();
  98. String imageId = doc.getString("imageId");
  99.  
  100. //Hämta profilbild.
  101. StorageReference storageRef = storage.getReferenceFromUrl(imageId);
  102.  
  103. final long ONE_MEGABYTE = 1024 * 1024;
  104.  
  105. storageRef.getBytes(ONE_MEGABYTE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
  106. @Override
  107. public void onSuccess(byte[] bytes) {
  108. // Data for "images/island.jpg" is returns, use this as needed
  109. Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
  110. imageView.setImageBitmap(bitmap);
  111. }
  112. }).addOnFailureListener(new OnFailureListener() {
  113. @Override
  114. public void onFailure(@NonNull Exception exception) {
  115. // Handle any errors
  116. }
  117. });
  118. }
  119. }
  120. });
  121.  
  122.  
  123. return v;
  124.  
  125. //adsPic.setImageBitmap(BitmapFactory.decodeByteArray(pics, 0, pics.length));
  126. }
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement