private void initPageView() { flPage = new FrameLayout(getContext()); flPage.setOnClickListener(this); // 宫格列表的容器,为了“下对齐”,在外部包含了一个FrameLayout LinearLayout llPage = new LinearLayout(getContext()) { public boolean onTouchEvent(MotionEvent event) { return true; } }; llPage.setOrientation(LinearLayout.VERTICAL); int resId = getBitmapRes(getContext(), "share_vp_back"); if (resId > 0) { llPage.setBackgroundResource(resId); } FrameLayout.LayoutParams lpLl = new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); lpLl.gravity = Gravity.BOTTOM; llPage.setLayoutParams(lpLl); flPage.addView(llPage); // 宫格列表 grid = new PlatformGridView(getContext()); grid.setEditPageBackground(bgView); LinearLayout.LayoutParams lpWg = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); grid.setLayoutParams(lpWg); llPage.addView(grid); // 取消按钮 btnCancel = new Button(getContext()); btnCancel.setTextColor(0xffffffff); btnCancel.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20); resId = getStringRes(getContext(), "cancel"); if (resId > 0) { btnCancel.setText(resId); } btnCancel.setPadding(0, 0, 0, cn.sharesdk.framework.utils.R.dipToPx(getContext(), 5)); resId = getBitmapRes(getContext(), "btn_cancel_back"); if (resId > 0) { btnCancel.setBackgroundResource(resId); } LinearLayout.LayoutParams lpBtn = new LinearLayout.LayoutParams( LayoutParams.MATCH_PARENT, cn.sharesdk.framework.utils.R.dipToPx(getContext(), 45)); int dp_10 = cn.sharesdk.framework.utils.R.dipToPx(getContext(), 10); lpBtn.setMargins(dp_10, dp_10, dp_10, dp_10); btnCancel.setLayoutParams(lpBtn); llPage.addView(btnCancel); }