在Android中使用PopupWindow实现一个弹出分享功能?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。代码package com.duanlian.po
在Android中使用PopupWindow实现一个弹出分享功能?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
代码
package com.duanlian.popupwindowdemo; import android.app.Activity; import android.content.Context; import android.graphics.drawable.ColorDrawable; import android.view.LayoutInflater; import android.view.View; import android.view.WindowManager; import android.widget.LinearLayout; import android.widget.PopupWindow; import android.widget.TextView; public class RewritePopwindow extends PopupWindow { private View mView; public RewritePopwindow(Activity context, View.OnClickListener itemsOnClick) { super(context); initView(context, itemsOnClick); } private void initView(final Activity context, View.OnClickListener itemsOnClick) { LayoutInflater mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mView = mInflater.inflate(R.layout.popupwindow_share, null); LinearLayout weiXFriend = (LinearLayout) mView.findViewById(R.id.weixinghaoyou); LinearLayout friendster = (LinearLayout) mView.findViewById(R.id.pengyouquan); LinearLayout QQFriend = (LinearLayout) mView.findViewById(R.id.qqhaoyou); LinearLayout QQZone = (LinearLayout) mView.findViewById(R.id.qqkongjian); TextView canaleTv = (TextView) mView.findViewById(R.id.share_cancle); canaleTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //销毁弹出框 dismiss(); backgroundAlpha(context, 1f); } }); //设置按钮监听 weiXFriend.setOnClickListener(itemsOnClick); friendster.setOnClickListener(itemsOnClick); QQFriend.setOnClickListener(itemsOnClick); QQZone.setOnClickListener(itemsOnClick); //设置SelectPicPopupWindow的View this.setContentView(mView); //设置SelectPicPopupWindow弹出窗体的宽 this.setWidth(WindowManager.LayoutParams.FILL_PARENT); //设置SelectPicPopupWindow弹出窗体的高 this.setHeight(WindowManager.LayoutParams.WRAP_CONTENT); //设置SelectPicPopupWindow弹出窗体可点击 this.setFocusable(true); //设置PopupWindow可触摸 this.setTouchable(true); //设置非PopupWindow区域是否可触摸 // this.setOutsideTouchable(false); //设置SelectPicPopupWindow弹出窗体动画效果 // this.setAnimationStyle(R.style.select_anim); //实例化一个ColorDrawable颜色为半透明 ColorDrawable dw = new ColorDrawable(0x00000000); //设置SelectPicPopupWindow弹出窗体的背景 this.setBackgroundDrawable(dw); backgroundAlpha(context, 0.5f);//0.0-1.0 this.setOnDismissListener(new OnDismissListener() { @Override public void onDismiss() { // TODO Auto-generated method stub backgroundAlpha(context, 1f); } }); } public void backgroundAlpha(Activity context, float bgAlpha) { WindowManager.LayoutParams lp = context.getWindow().getAttributes(); lp.alpha = bgAlpha; context.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); context.getWindow().setAttributes(lp); } }
--结束END--
本文标题: 在Android中使用PopupWindow实现一个弹出分享功能
本文链接: https://www.lsjlt.com/news/225401.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0