package code.suibianchou.com.custormview2;import android.annotation.suppresslint;
import android.content.context;
import android.graphics.rect;
import android.util.attributeset;
import android.view.motionevent;
import android.view.view;
import android.view.animation.translateanimation;
import android.widget.scrollview;
/*** created by administrator on 2017/5/18 0018.
*/public class bouncescrollview extends scrollview
/***
* 根據 xml 生成檢視工作完成.該函式在生成檢視的最後呼叫,在所有子檢視新增完之後. 即使子類覆蓋了 onfinishinflate
* 方法,也應該呼叫父類的方法,使該方法得以執行.
*/@suppresslint("missingsupercall")
@override
protected void onfinishinflate()
}@override
public boolean dispatchtouchevent(motionevent ev)
break;
case motionevent.action_up:
break;
default:
break;
}lastx = currentx;
lasty = currenty;
if (updownslide && inner != null) commontouchevent(ev);
return super.dispatchtouchevent(ev);
}@override
public boolean onintercepttouchevent(motionevent ev)
/***
* 監聽touch
*/@override
public boolean ontouchevent(motionevent ev)
/***
* 觸控事件
** @param ev
*/public void commontouchevent(motionevent ev)
clear0();
break;
case motionevent.action_move:
final float prey = y;// 按下時的y座標
float nowy = ev.gety();// 時時y座標
int deltay = (int) (prey - nowy);// 滑動距離
if (!iscount)
y = nowy;
// 當滾動到最上或者最下時就不會再滾動,這時移動布局
if (isneedmove())
// 移動布局
inner.layout(inner.getleft(), inner.gettop() - deltay / 2,
inner.getright(), inner.getbottom() - deltay / 2);
}iscount = true;
break;
default:
break;}}
/***
* 回縮動畫
*/public void animation()
// 是否需要開啟動畫
public boolean isneedanimation()
/***
* 是否需要移動布局 inner.getmeasuredheight():獲取的是控制項的總高度
** getheight():獲取的是螢幕的高度
** @return
*/public boolean isneedmove()
return false;
}private void clear0()
}
仿ios 可滑動的ScrollView
本人在開發過程中頁面效果由於使用android本身控制項無法達到ios那種可拉伸的view,感到很不爽,因為ios總是可以滑動,避免再新增功能時重新布局的麻煩,所以整了一下,顯示了可拉伸的view,終於可以與ios保持一致了.建立乙個自定義view userdefinescrollview 繼承sc...
仿美團app,浮動layout滑動到頂部懸停效果
說明原理 好,看完效果圖之後,我們來看一下這個效果的設計原理。首先,我們來看一張整體的設計圖 設計效果圖是分為三個部分 頂部區域 浮動區域a 列表區域。1.當螢幕往上面滑動的時候,互動區域a也跟著滑動 2.當浮動區域a滑動到頂部的時候,浮動區域a停留在頂部 上右圖 3.當螢幕往下滑動的時候,浮動區域...
仿美團app,浮動layout滑動到頂部懸停效果
那麼,這時問題來了。怎麼能讓浮動區域a停在頂部,而且不影響其他內容的滑動呢?在這裡我們可以寫多乙個和浮動區域a介面效果一模一樣的浮動區域b。在布局的時候,先把浮動區域b的可見性設定為gone,即隱藏起來。當浮動區域a滑動到頂部的時候,就把浮動區域b的可見性設定為visible,即可見。這時浮動區域b...