设为首页 加入收藏

TOP

Android下拉刷新上拉加载简单的实现方法(一)
2015-07-16 12:55:29 来源: 作者: 【 】 浏览:2
Tags:Android 下拉 刷新 加载 简单 实现 方法

我的学习步骤;


在网上下载demo;然后把必要的导入到项目中;


在此附上下载源码


------------------------------------------分割线------------------------------------------


具体下载目录在 /2015年资料/6月/12日/Android下拉刷新上拉加载简单的实现方法/


------------------------------------------分割线------------------------------------------


所有的源代码如下;


XListViewFooter类


/**
?* @file XFooterView.java
?* @create Mar 31, 2012 9:33:43 PM
?* @author Maxwin
?* @description XListView's footer
?*/
package me.maxwin.view;


import me.maxwin.R;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;


public class XListViewFooter extends LinearLayout {
?public final static int STATE_NORMAL = 0;
?public final static int STATE_READY = 1;
?public final static int STATE_LOADING = 2;


?private Context mContext;


?private View mContentView;
?private View mProgressBar;
?private TextView mHintView;
?
?public XListViewFooter(Context context) {
? super(context);
? initView(context);
?}
?
?public XListViewFooter(Context context, AttributeSet attrs) {
? super(context, attrs);
? initView(context);
?}


?
?public void setState(int state) {
? mHintView.setVisibility(View.INVISIBLE);
? mProgressBar.setVisibility(View.INVISIBLE);
? mHintView.setVisibility(View.INVISIBLE);
? if (state == STATE_READY) {
? ?mHintView.setVisibility(View.VISIBLE);
? ?mHintView.setText(R.string.xlistview_footer_hint_ready);
? } else if (state == STATE_LOADING) {
? ?mProgressBar.setVisibility(View.VISIBLE);
? } else {
? ?mHintView.setVisibility(View.VISIBLE);
? ?mHintView.setText(R.string.xlistview_footer_hint_normal);
? }
?}
?
?public void setBottomMargin(int height) {
? if (height < 0) return ;
? LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams)mContentView.getLayoutParams();
? lp.bottomMargin = height;
? mContentView.setLayoutParams(lp);
?}
?
?public int getBottomMargin() {
? LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams)mContentView.getLayoutParams();
? return lp.bottomMargin;
?}
?
?
?/**
? * normal status
? */
?public void normal() {
? mHintView.setVisibility(View.VISIBLE);
? mProgressBar.setVisibility(View.GONE);
?}
?
?
?/**
? * loading status
? */
?public void loading() {
? mHintView.setVisibility(View.GONE);
? mProgressBar.setVisibility(View.VISIBLE);
?}
?
?/**
? * hide footer when disable pull load more
? */
?public void hide() {
? LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams)mContentView.getLayoutParams();
? lp.height = 0;
? mContentView.setLayoutParams(lp);
?}
?
?/**
? * show footer
? */
?public void show() {
? LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams)mContentView.getLayoutParams();
? lp.height = LayoutParams.WRAP_CONTENT;
? mContentView.setLayoutParams(lp);
?}
?
?private void initView(Context context) {
? mContext = context;
? LinearLayout moreView = (LinearLayout)LayoutInflater.from(mContext).inflate(R.layout.xlistview_footer, null);
? addView(moreView);
? moreView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
?
? mContentView = moreView.findViewById(R.id.xlistview_footer_content);
? mProgressBar = moreView.findViewById(R.id.xlistview_footer_progressbar);
? mHintView = (TextView)moreView.findViewById(R.id.xlistview_footer_hint_textview);
?}
?
?
}


X

首页 上一页 1 2 3 4 5 6 下一页 尾页 1/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Shell 脚本面试问题大全 下一篇微软2014校园招聘笔试试题

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: