編輯:關於Android編程
package com.zhulin.android.atools; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.view.VelocityTracker; import android.view.View; import android.view.ViewGroup; import android.view.animation.Interpolator; import android.widget.Scroller; import android.widget.Toast; public class VerticalPager extends ViewGroup{ private Scroller mScroller; private Context mContext; public VerticalPager(Context context, AttributeSet attrs) { super(context, attrs); this.mContext=context; mScroller=new Scroller(context); // mScroller=new Scroller(mContext, new Interpolator() { // // @Override // public float getInterpolation(float input) { // return 300; // } // }); } @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { int totalHeight=0; int count=getChildCount(); for(int i=0;i(getHeight()*(getChildCount()-1))){ View lastView=getChildAt(getChildCount()-1); mScroller.startScroll(0,lastView.getTop()+300, 0, -300); }else{ int position=getScrollY()/getHeight(); int mod=getScrollY()%getHeight(); if(mod>getHeight()/3){ View positionView=getChildAt(position+1); mScroller.startScroll(0, positionView.getTop()-300, 0, +300); }else{ View positionView=getChildAt(position); mScroller.startScroll(0, positionView.getTop()+300, 0, -300); } } invalidate(); break; // case MotionEvent.ACTION_MASK: // if(getScrollY()<0){ // mScroller.startScroll(0, 0, 0, 0); // }else if(getScrollY()>(getHeight()*(getChildCount()-1)){ // } // invalidate(); // break; } return true; } @Override public void computeScroll() { super.computeScroll(); if(mScroller.computeScrollOffset()){ scrollTo(0, mScroller.getCurrY()); }else{ } } }
xml布局
ViewSwitcher 的作用簡單來說就是:在兩個視圖間轉換時顯示動畫它的兩個子類應該很熟悉,ImageSwitcher:轉換圖片時增加動畫效果;TextSwitche
此方法適用於所有母控件無法獲取焦點的情況 開發中很常見的一個問題,項目中的listview不僅僅是簡單的文字,常常需要自己定義listview,自己的Adapter去繼承
Android中常用的5大布局方式有以下幾種:線性布局(LinearLayout):按照垂直或者水平方向布局的組件。幀布局(FrameLayout):組件從屏幕左上方布局
Android 日期和時間的使用日期和時間的使用;1:彈出框TimePickerDialog,DatePickerDialog2:組件TimePicker,DatePic