package com.android;
import java.util.List;
import android.app.AlertDialog;
import android.content.Context;
import android.database.DataSetObserver;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.ListAdapter;
import android.widget.TextView;
import android.widget.Toast;
/**
* 适配器
*
* @author Administrator
*
*/
public class DetailAdapter implements ListAdapter
{
private List<DetailEntity> coll;
private Context ctx;
// 消息
DetailEntity entity;
LinearLayout layout;
// 加载布局
LayoutInflater vi;
// ------------------------------
// 背景
LinearLayout layout_bj;
TextView tvName;
TextView tvDate;
TextView tvText;
public DetailAdapter(Context context, List<DetailEntity> coll)
{
ctx = context;
this.coll = coll;
}
public boolean areAllItemsEnabled()
{
return true;
}
/**
* 为true监听Item
*/
public boolean isEnabled(int arg0)
{
return true;
}
public int getCount()
{
return coll.size();
}
public Object getItem(int position)
{
return coll.get(position);
}
public long getItemId(int position)
{
return position;
}
public int getItemViewType(int position)
{
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
entity = coll.get(position);
int itemLayout = entity.getLayoutID();
layout = new LinearLayout(ctx);
vi = (LayoutInflater) ctx
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
vi.inflate(itemLayout, layout, true);
layout.setBackgroundColor(0xffB4B4B4);
// 图片背景
layout_bj = (LinearLayout) layout.findViewById(R.id.layout_bj);
tvName = (TextView) layout.findViewById(R.id.messagedetail_row_name);
tvName.setText(entity.getName());
tvDate = (TextView) layout.findViewById(R.id.messagedetail_row_date);
tvDate.setText(entity.getDate());
tvText = (TextView) layout.findViewById(R.id.messagedetail_row_text);
tvText.setText(entity.getText());
addListener(tvName, tvDate, tvText, layout_bj);
return layout;
}
public int getViewTypeCount()
{
return coll.size();
}
public boolean hasStableIds()
{
return true;
}
public boolean isEmpty()
{
return true;
}
@Override
public void registerDataSetObserver(DataSetObserver observer)
{
// TODO Auto-generated method stub
}
@Override
public void unregisterDataSetObserver(DataSetObserver observer)
{
// TODO Auto-generated method stub
}
/**
* 监听
*
* @param convertView
*/
public void addListener(final TextView tvName, final TextView tvDate,
final TextView tvText, LinearLayout layout_bj)
{
layout_bj.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
}
});
layout_bj.setOnLongClickListener(new OnLongClickListener()
{
@Override
public boolean onLongClick(View v)
{
tvName.setTextColor(0xffffffff);
tvDate.setTextColor(0xffffffff);
tvText.setTextColor(0xffffffff);
new AlertDialog.Builder(ctx).setTitle("当前是长按操作")
.setMessage("准备写个菜单").create().show();
return true;
}
});
layout_bj.setOnTouchListener(new OnTouchListener()
{
@Override
public boolean onTouch(View v, MotionEvent event)
{
switch (event.getAction())
{
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
tvName.setTextColor(0xffffffff);
tvDate.setTextColor(0xffffffff);
tvText.setTextColor(0xffffffff);
break;
default:
tvName.setTextColor(0xff000000);
tvDate.setTextColor(0xff000000);
tvText.setTextColor(0xff0000ff);
break;
}
return false;
}
});
}
}
UI之高仿iphone短信发送气泡效果
4星 · 超过85%的资源 需积分: 45 155 浏览量
2013-06-18
08:05:10
上传
评论 2
收藏 104KB RAR 举报
ququ904648
- 粉丝: 4
- 资源: 26
最新资源
- 基于Python实现的自动化办公项目.zip
- 基于python实现的基于PyQt5和爬虫的小说阅读系统.zip
- 机械设计整经机上纱自动化sw20非常好的设计图纸100%好用.zip
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈