Guest User

RealChatRecyclerInterface

a guest
Nov 28th, 2020
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.86 KB | None | 0 0
  1. public class RealChatRecyclerInterface extends RecyclerView.Adapter<RealChatRecyclerInterface.myInterface> {
  2.  
  3.     String userId;
  4.     List<ChatModel> list;
  5.     int flag = 0;
  6.  
  7.     final int SENT = 1;
  8.     final int RECEIVED = 0;
  9.     String currentUid, newUid, uid = "h";
  10.  
  11.  
  12.     public RealChatRecyclerInterface(String userId, List<ChatModel> list) {
  13.         this.list = list;
  14.         this.userId = userId;
  15.     }
  16.  
  17.     @NonNull
  18.     @Override
  19.     public RealChatRecyclerInterface.myInterface onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
  20.         View view;
  21.         if(viewType == RECEIVED){
  22.             view = LayoutInflater.from(parent.getContext()).inflate(R.layout.arpit_recieved_chat, parent, false);
  23.         }
  24.         else {
  25.             view = LayoutInflater.from(parent.getContext()).inflate(R.layout.arpit_sent_chat, parent, false);
  26.         }
  27.         return new myInterface(view);
  28.     }
  29.  
  30.     @Override
  31.     public void onBindViewHolder(@NonNull RealChatRecyclerInterface.myInterface holder, int position) {
  32.         holder.caller(list.get(position));
  33.     }
  34.  
  35.     @Override
  36.     public int getItemCount() {
  37.         return list.size();
  38.     }
  39.  
  40.     @Override
  41.     public int getItemViewType(int position) {
  42.         if(list.get(position).getUserId().equals(userId)){
  43.             return SENT;
  44.         }
  45.         else{
  46.             return RECEIVED;
  47.         }
  48.     }
  49.  
  50.     class myInterface extends RecyclerView.ViewHolder{
  51.         TextView messageText, nameText, nameOverImage;
  52.         CardView cardView ,textCardview;
  53.         ImageView image;
  54.         public myInterface(@NonNull View itemView) {
  55.             super(itemView);
  56.  
  57.             try {
  58.                 messageText = itemView.findViewById(R.id.arpit_chat_message);
  59.             }
  60.             catch (Exception e) {
  61.                 e.printStackTrace();
  62.             }
  63.             try {
  64.                 nameText = itemView.findViewById(R.id.name);
  65.             }
  66.             catch (Exception e) {
  67.                 e.printStackTrace();
  68.             }
  69.             try{
  70.                 nameOverImage = itemView.findViewById(R.id.nameOverImage);
  71.             }
  72.             catch (Exception e){
  73.                 e.printStackTrace();
  74.             }
  75.             try{
  76.                 cardView = itemView.findViewById(R.id.imageCardview);
  77.             }catch (Exception e){
  78.                 e.printStackTrace();
  79.             }
  80.             try{
  81.                 textCardview = itemView.findViewById(R.id.textCardview);
  82.             }catch (Exception e){
  83.                 e.printStackTrace();
  84.             }
  85.             try{
  86.                 image = itemView.findViewById(R.id.messageImage);
  87.             }catch (Exception e){
  88.                 e.printStackTrace();
  89.             }
  90.         }
  91.  
  92.         public void caller(ChatModel chatModel) {
  93.  
  94.             if("text".equals(chatModel.getType())) {
  95.                 try {
  96.                     messageText.setText(chatModel.getMessage());
  97.                 } catch (Exception e) {
  98.                     e.printStackTrace();
  99.                 }
  100.                 try{
  101.                     textCardview.setVisibility(View.VISIBLE);
  102.                 }
  103.                 catch(Exception e){
  104.                     e.printStackTrace();
  105.                 }
  106.                 try {
  107.                     nameText.setText("@" + chatModel.getUsername());
  108.                 } catch (Exception e) {
  109.                     e.printStackTrace();
  110.                 }
  111.             }
  112.  
  113.  
  114.             if("image".equals(chatModel.getType())){
  115.  
  116.                 try {
  117.                     nameText.setText("@" + chatModel.getUsername());
  118.                 } catch (Exception e) {
  119.                     e.printStackTrace();
  120.                 }
  121.  
  122.                 cardView.setVisibility(View.VISIBLE);
  123.                 Picasso.get().load(Uri.parse(chatModel.getMessage())).into(image);
  124.  
  125.             }
  126.         }
  127.     }
  128. }
  129.  
Add Comment
Please, Sign In to add comment