XListView 配置文件 需导入项目类名:XListViewFooter

    xiaoxiao2025-05-25  7

    

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

    import com.example.xlistviewtest.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);  }     }

    转载请注明原文地址: https://ju.6miu.com/read-1299264.html
    最新回复(0)