自定義listview下拉刷新

自定義listview下拉刷新



自定義progressBar


<rotate  xmlns:。。。。
   android:fromDegrees=“0”
android:pivotX=“50%”
android:pivotY=“50%”
android:toDegrees=“360”>


<shape   android:shape=”ring“ android:innerRadiusRatio=”2.5“>表示內部環的比例,環的寬度/2.5=內部環得寬度
android:thicknessRatio=”15“ 厚度的比例,厚度=環的寬度/2
android:uselevel=”false“ 持續顯示  true爲若影若現>
      <gradient   android:startColor=”#ff0000“  android:centerColor=”#88ff0000“ android:endColor="#ffffff”android:type="sweep"/>慢慢少色
</shape>

</rotate>

<ProgressBar 
//不定期的,不知啥時結束
            indeterminateDrawable=“@drawable/custom_progressbar(這是上面的動畫)/>





1,RefreshListView extends ListView{

private  LinearLayout   headerView;
             public RefreshListView( Context  context,AttributeSet attrs,int  defStyleAttr ){
                 super(context, attrs,defStyleAttr);
                          initHeaderView( context );
                  }
    private void initHeaderView(Context  context) {
              headerView=View.inflate(context ,R.layout.refresh_header,null);
            
                 view.measure(0,0);
               int height= view.getMeasuredHeight(  );


               view.setPadding(0,-控件的高,0,0);完全隱藏
              view.setPadding(0,0,0,0);完全顯示

              addHeaderView( headView);
        }


private float startY=-1;
public boolean  onTouchEvent (MotionEvent  ev){

                        switch( ev.getAction( )  ) {
                   case   MotionEvent.ACTION_DOWN:
                            startY=ev.getY( );
    //記錄起始座標
                   break;
                   case   MotionEvent.ACTION_DOWN:
if(startY==-1){
  startY=ev.getY();
}
                           float  endY=ev.getY();
                       float distanceY=endY-startY;
下拉時才顯示
if(distanceY>0){
             float     paddingTop=-控件高+distanceY;
                 view.setPadding( 0, paddingTop,0 , 0);//動態的顯示下拉刷新控件
}
                   break;
                   case   MotionEvent.ACTION_DOWN:
                             startY=-1;
                   break;

return true;
               }
}


}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章