2018-02-10 17:34:01 +01:00
package de.vanitasvitae.slam.mvp.view ;
2018-01-31 14:40:01 +01:00
import android.app.Fragment ;
import android.os.Bundle ;
import android.support.v7.widget.LinearLayoutManager ;
import android.support.v7.widget.RecyclerView ;
import android.view.LayoutInflater ;
import android.view.View ;
import android.view.ViewGroup ;
import android.widget.ImageView ;
import android.widget.TextView ;
import butterknife.BindView ;
import butterknife.ButterKnife ;
import de.vanitasvitae.slam.R ;
import de.vanitasvitae.slam.ui.ChatMessageEntry ;
/ * *
2018-02-10 17:34:01 +01:00
* Fragment that shows the conversation with a user .
*
2018-01-31 14:40:01 +01:00
* Created by Paul Schaub on 30 . 01 . 18 .
* /
2018-02-10 17:34:01 +01:00
public class ConversationFragment extends Fragment {
2018-01-31 14:40:01 +01:00
@BindView ( R . id . recycler_chat )
RecyclerView recyclerView ;
@Override
public View onCreateView ( LayoutInflater inflater , ViewGroup container ,
Bundle savedInstanceState ) {
View view = inflater . inflate ( R . layout . fragment_chat , container , false ) ;
ButterKnife . bind ( this , view ) ;
return view ;
}
@Override
public void onViewCreated ( final View view , Bundle savedInstanceState ) {
final String [ ] messages = new String [ ] { " This is an example message. " , " null " , " This is a very long message. Its purpose is to demonstrate Slam!s ability to render longer messages in a sane way without looking too crowded. " } ;
recyclerView . setLayoutManager ( new LinearLayoutManager ( getActivity ( ) ) ) ;
recyclerView . setAdapter ( new RecyclerView . Adapter < ChatMessageEntry > ( ) {
@Override
public ChatMessageEntry onCreateViewHolder ( ViewGroup parent , int viewType ) {
View view1 = LayoutInflater . from ( getActivity ( ) ) . inflate ( R . layout . item_chatmessage , parent , false ) ;
return new ChatMessageEntry ( view1 ) ;
}
@Override
public void onBindViewHolder ( ChatMessageEntry holder , int position ) {
View content ;
if ( position ! = 1 ) {
content = new TextView ( getActivity ( ) ) ;
( ( TextView ) content ) . setText ( messages [ position ] ) ;
} else {
content = new ImageView ( getActivity ( ) ) ;
( ( ImageView ) content ) . setImageResource ( R . drawable . ic_add_a_photo_black_48dp ) ;
}
holder . bind ( " alice@wonderland.lit " ,
" Member " , content , " just now " ) ;
}
@Override
public int getItemCount ( ) {
return messages . length ;
}
} ) ;
recyclerView . getAdapter ( ) . notifyDataSetChanged ( ) ;
}
}