第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

怎么使菜單欄完全覆蓋頁面修改哪個代碼

怎么使菜單欄完全覆蓋頁面修改哪個代碼


正在回答

2 回答

在xml里設自定義屬性rightPadding = 0 dp?

0 回復 有任何疑惑可以回復我~
#1

慕仙1788428 提問者

可以具體點嗎
2016-04-24 回復 有任何疑惑可以回復我~
#2

慕仙1788428 提問者

非常感謝!
2016-04-25 回復 有任何疑惑可以回復我~

public class SlidingMenu extends HorizontalScrollView

{

private LinearLayout mWapper;

private ViewGroup mMenu;

private ViewGroup mContent;

private int mScreenWidth;


private int mMenuWidth;

// dp

private int mMenuRightPadding =0;



private boolean once;


private boolean isOpen;


/**

* 未使用自定義屬性時,調(diào)用

*?

* @param context

* @param attrs

*/

public SlidingMenu(Context context, AttributeSet attrs)

{

this(context, attrs, 0);

}


/**

* 當使用了自定義屬性時,會調(diào)用此構(gòu)造方法

*?

* @param context

* @param attrs

* @param defStyle

*/

public SlidingMenu(Context context, AttributeSet attrs, int defStyle)

{

super(context, attrs, defStyle);


// 獲取我們定義的屬性

TypedArray a = context.getTheme().obtainStyledAttributes(attrs,

R.styleable.SlidingMenu, defStyle, 0);


int n = a.getIndexCount();

for (int i = 0; i < n; i++)

{

int attr = a.getIndex(i);

switch (attr)

{

case R.styleable.SlidingMenu_rightPadding:

mMenuRightPadding = a.getDimensionPixelSize(attr,

(int) TypedValue.applyDimension(

TypedValue.COMPLEX_UNIT_DIP, 0, context

.getResources().getDisplayMetrics()));

break;

}

}

a.recycle();


WindowManager wm = (WindowManager) context

.getSystemService(Context.WINDOW_SERVICE);

DisplayMetrics outMetrics = new DisplayMetrics();

wm.getDefaultDisplay().getMetrics(outMetrics);

mScreenWidth = outMetrics.widthPixels;


}


public SlidingMenu(Context context)

{

this(context, null);

}


/**

* 設置子View的寬和高 設置自己的寬和高

*/

@Override

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)

{

if (!once)

{

mWapper = (LinearLayout) getChildAt(0);

mMenu = (ViewGroup) mWapper.getChildAt(0);

mContent = (ViewGroup) mWapper.getChildAt(1);

mMenuWidth = mMenu.getLayoutParams().width = mScreenWidth

- mMenuRightPadding;

mContent.getLayoutParams().width = mScreenWidth;

once = true;

}

super.onMeasure(widthMeasureSpec, heightMeasureSpec);

}


/**

* 通過設置偏移量,將menu隱藏

*/

@Override

protected void onLayout(boolean changed, int l, int t, int r, int b)

{

super.onLayout(changed, l, t, r, b);

if (changed)

{

this.scrollTo(mMenuWidth, 0);

}

}


@Override

public boolean onTouchEvent(MotionEvent ev)

{

int action = ev.getAction();

switch (action)

{

case MotionEvent.ACTION_UP:

// 隱藏在左邊的寬度

int scrollX = getScrollX();

if (scrollX >= mMenuWidth / 2)

{

this.smoothScrollTo(mMenuWidth, 0);

isOpen = false;

} else

{

this.smoothScrollTo(0, 0);

isOpen = true;

}

return true;

}

return super.onTouchEvent(ev);

}


/**

* 打開菜單

*/

public void openMenu()

{

if (isOpen)

return;

this.smoothScrollTo(0, 0);

isOpen = true;

}


public void closeMenu()

{

if (!isOpen)

return;

this.smoothScrollTo(mMenuWidth, 0);

isOpen = false;

}


/**

* 切換菜單

*/

public void toggle()

{

if (isOpen)

{

closeMenu();

} else

{

openMenu();

}

}


}


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
QQ5.0側(cè)滑菜單
  • 參與學習       62515    人
  • 解答問題       304    個

本教程將帶領大家通過自定義控件實現(xiàn)QQ5.0側(cè)滑菜單

進入課程

怎么使菜單欄完全覆蓋頁面修改哪個代碼

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號