前言
本文主要給大家分享了Android仿網(wǎng)易新聞圖片詳情下滑隱藏效果的相關(guān)內(nèi)容,分享出來供需要的朋友參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹吧
效果圖:
實(shí)例代碼
public class InfoTextView extends AutoRelativeLayout { private Context context; private int lastY; private int offY; private int MIN_HEIGHT = 600; public InfoTextView(Context context) { super(context); this.context = context; init(); } public InfoTextView(Context context, AttributeSet attrs) { super(context, attrs); this.context = context; init(); } public InfoTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); this.context = context; init(); } private void init() { View root = inflate(context, R.layout.ad_detail_text_layout, this); } @Override public boolean onInterceptTouchEvent(MotionEvent ev) { return true; } @Override public boolean onTouchEvent(MotionEvent event) { return true; } @Override public boolean dispatchTouchEvent(MotionEvent ev) { boolean isConsume = false; int y = (int) ev.getY(); switch (ev.getAction()) { case MotionEvent.ACTION_DOWN: isConsume = true; lastY = y; break; case MotionEvent.ACTION_MOVE: offY = y - lastY; int[] screenSize = ScreenUtils.getScreenSize(context, false); if (getTop() >= (screenSize[1] - MIN_HEIGHT)) { break; } // Log.d("yzk", "y " + y + " getTop " + getTop() // + " getBottom " + getBottom() // + " screenSize[1] - getMeasuredHeight " + (screenSize[1] - getMeasuredHeight()) // + " screenSize[1] - MIN_HEIGHT " + (screenSize[1] - MIN_HEIGHT)); if ((offY > 0 && getTop() < screenSize[1] - MIN_HEIGHT) || offY < 0 && getTop() > screenSize[1] - getMeasuredHeight()) { layout(getLeft(), getTop() + offY, getRight(), getBottom() + offY); } break; case MotionEvent.ACTION_UP: break; } return isConsume || super.dispatchTouchEvent(ev); } }
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)VEVB武林網(wǎng)的支持。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注