Files
BeWoPlaner/Android/BewoMitarbeiterApp/app/src/main/java/beyondsoft/bewomitarbeiterapp/MessageAdapter.java

102 lines
3.1 KiB
Java
Raw Normal View History

2016-06-27 01:45:38 +02:00
package beyondsoft.bewomitarbeiterapp;
import android.app.Activity;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import java.util.List;
/**
* Created by bib on 20.05.2016.
*/
public class MessageAdapter extends ArrayAdapter<ChatMessageFormat> {
private Activity activity;
private List<ChatMessageFormat> messages;
public MessageAdapter(Activity context, int resource, List<ChatMessageFormat> objects) {
super(context, resource, objects);
this.activity = context;
this.messages = objects;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
int layoutResource = 0; // determined by view type
ChatMessageFormat chatMessage = getItem(position);
int viewType = getItemViewType(position);
//Splitt message um zu wissen ob from server oder nicht
2016-07-25 09:23:22 +02:00
// String line = chatMessage.getMessage();
2016-06-27 01:45:38 +02:00
//Server nachricht kenntlich machen
if (chatMessage.getIsME()) {
layoutResource = R.layout.item_chat_right;
2016-07-25 09:23:22 +02:00
// } else if(splitt[0].equals("Server")) {
// layoutResource = R.layout.item_chat_sever_right;
2016-06-27 01:45:38 +02:00
}else {
layoutResource = R.layout.item_chat_left;
}
2016-07-18 06:14:17 +02:00
convertView = inflater.inflate(layoutResource, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
2016-06-27 01:45:38 +02:00
//set message content
holder.msg.setText(chatMessage.getMessage());
//TODO eine weitere option für Chatmessage hinzufügen zum abfragen wegen send Message
2016-07-25 09:23:22 +02:00
if(holder.send_tick != null) {
holder.send_tick.setText(Html.fromHtml("&#x2713;") + "" + Html.fromHtml("&#x2713;"));
}
2016-06-27 01:45:38 +02:00
if(chatMessage.getIsME()){
holder.dateIn.setText(chatMessage.getDatum());
}else {
holder.dateOut.setText(chatMessage.getDatum());
}
return convertView;
}
@Override
public int getViewTypeCount() {
// return the total number of view types. this value should never change
// at runtime
return 2;
}
@Override
public int getItemViewType(int position) {
// return a value between 0 and (getViewTypeCount - 1)
return position % 2;
}
private class ViewHolder {
private TextView msg;
private TextView dateOut;
private TextView dateIn;
private TextView send_tick;
public ViewHolder(View v) {
msg = (TextView) v.findViewById(R.id.txt_msg);
dateOut = (TextView)v.findViewById(R.id.DateOUT);
dateIn = (TextView)v.findViewById(R.id.DateIN);
send_tick = (TextView)v.findViewById(R.id.txt_msg_tick);
}
}
}