XCPullToLoadMoreListView-下拉加載更多ListView控件(仿QQ、微信聊天對話列表控件)
XCPullToLoadMoreListView
This is a custom pull-down-to-load-more listview layout project,which is such as QQ chat or wechat chat listview。
XCPullToLoadMoreListView-下拉加載更多ListView控件(仿QQ、微信聊天對話列表控件)
效果圖:
使用方法示例:
public class MainActivity extends AppCompatActivity {
ListView mListView; MyAdapter mAdapter; XCPullToLoadMoreListView mPTLListView; List<String> mList = new ArrayList<>(0); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); } private void init() { for(int i = 191;i <=200; i ++){ mList.add("Item "+ i); } mPTLListView = (XCPullToLoadMoreListView) findViewById(R.id.list); mPTLListView.setOnRefreshListener(new XCPullToLoadMoreListView.OnRefreshListener() { @Override public void onPullDownLoadMore() { Log.v("czm", "onRefreshing"); new Handler().postDelayed(new Runnable() { @Override public void run() { List<String> list = new ArrayList<String>(); int i = 200 - mList.size() - 10 + 1; int count = 0; while (count < 10) { list.add("Item " + i); i++; count++; } mList.addAll(0, list); mAdapter.notifyDataSetChanged(); mPTLListView.onRefreshComplete(); } }, 1000); } }); mListView = mPTLListView.getListView(); mAdapter = new MyAdapter(); mListView.setAdapter(mAdapter); } private class MyAdapter extends BaseAdapter { @Override public int getCount() { return mList.size(); } @Override public Object getItem(int position) { return mList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { holder = new ViewHolder(); convertView = new TextView(getApplicationContext()); convertView.setLayoutParams(new AbsListView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT , DensityUtil.dip2px(getApplicationContext(), 80))); holder.text = (TextView) convertView; convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } holder.text.setText(mList.get(position)); holder.text.setTextColor(Color.BLACK); holder.text.setGravity(Gravity.CENTER_VERTICAL);
// holder.text.setBackgroundColor(Color.WHITE); return convertView; }
class ViewHolder{ TextView text; } }
}
項目地址: https://github.com/jczmdeveloper/XCPullToLoadMoreListView
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!