@Override public View getView(int position, View convertView, ViewGroup parent) { ReceiveMessage msg = getItem(position); View view; ViewHolder viewHolder; if (convertView == null) { view = LayoutInflater.from(getContext()).inflate(resourceId, null); viewHolder = new ViewHolder(); viewHolder.leftLayout = (RelativeLayout) view.findViewById(R.id.left_layout); viewHolder.rightLayout = (RelativeLayout) view.findViewById(R.id.right_layout); viewHolder.leftMsg = (TextView) view.findViewById(R.id.left_text); viewHolder.rightMsg = (TextView) view.findViewById(R.id.right_text); view.setTag(viewHolder); } else { view = convertView; viewHolder = (ViewHolder) view.getTag(); } if (msg.getType() == ReceiveMessage.MSG_RECEIVE) { viewHolder.leftLayout.setVisibility(View.VISIBLE); viewHolder.rightLayout.setVisibility(View.GONE); viewHolder.leftMsg.setText(msg.getContext()); } else if (msg.getType() == ReceiveMessage.MSG_SEND) { viewHolder.rightLayout.setVisibility(View.VISIBLE); viewHolder.leftLayout.setVisibility(View.GONE); viewHolder.rightMsg.setText(msg.getContext()); } return view; }
public Description getSellerProtocol() { Description pd = new Description(); // 0 TryNode tn = new TryNode(); pd.getNode().add(tn); tn.setNextIndex(4); tn.setInnerIndex(1); tn.getCatchIndex().add(3); // 1 ReceiveMessage recvOrder = new ReceiveMessage(); recvOrder.setNextIndex(2); MessageType mt1 = new MessageType(); mt1.setValue(ORDER_MESSAGE_TYPE); recvOrder.getMessageType().add(mt1); pd.getNode().add(recvOrder); // 2 SendMessage sendConformation = new SendMessage(); MessageType mt2 = new MessageType(); mt2.setValue(CONFIRMATION_MESSAGE_TYPE); sendConformation.getMessageType().add(mt2); pd.getNode().add(sendConformation); // 3 ReceiveMessage recvCancel = new ReceiveMessage(); MessageType mt3 = new MessageType(); mt3.setValue(CANCEL_MESSAGE_TYPE); recvCancel.getMessageType().add(mt3); pd.getNode().add(recvCancel); // 4 ReceiveMessage recvFinish = new ReceiveMessage(); MessageType mt4 = new MessageType(); mt4.setValue(FINISH_MESSAGE_TYPE); recvFinish.getMessageType().add(mt4); pd.getNode().add(recvFinish); return (pd); }