Android之简单自定义PopupWindow弹框实现
2017-01-16 09:39
92 查看
-----------------转载请注明出处:http://blog.csdn.net/android_cll一:一般都是先上效果图、二:实现步骤:1.xml布局实现、
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/store_bgimg"> <RelativeLayout android:layout_width="fill_parent" android:layout_height="214dp" android:layout_centerVertical="true" android:layout_marginLeft="31dp" android:layout_marginRight="31dp" android:background="@drawable/tkbjzj"> <TextView android:id="@+id/tetle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="26dp" android:text="七天连锁酒店" android:textColor="#262626" android:textSize="18dp" /> <TextView android:id="@+id/textdz" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/tetle" android:layout_centerHorizontal="true" android:layout_marginTop="34dp" android:text="你已领取本店7.5折优惠券" android:textColor="#ea302e" /> <View android:layout_width="match_parent" android:layout_height="0.5dp" android:layout_above="@+id/lineardb" android:background="#e6e6e6" /> <LinearLayout android:id="@+id/lineardb" android:layout_width="match_parent" android:layout_height="44dp" android:layout_alignParentBottom="true"> <TextView android:id="@+id/textwzdl" android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" android:gravity="center" android:text="我知道了" android:textColor="#262626" android:textSize="16dp" /> <TextView android:id="@+id/textckxq" android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" android:background="#f86c6a" android:gravity="center" android:text="查看详情" android:textColor="#ffffff" android:textSize="16dp" /> </LinearLayout> </RelativeLayout> </RelativeLayout>2.drawable文件下的转角,然后在布局引用、
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 背景颜色 --> <solid android:color="#ffffff" /> <!-- 控制边界线颜色和大小 --> <stroke android:width="1dp" android:color="#ffffff" /> <!-- 控制圆角大小 --> <corners android:radius="4dp" /> </shape>3.activity的实现、
/** * 弹框 */ private View mPopupHeadViewy;//创建一个view private PopupWindow mHeadPopupclly;//PopupWindow private TextView tetle, textdz;//title,打折 private TextView textwzdl, textckxq;//我知道了,查看详情 @SuppressWarnings("deprecation") private void popupHeadWindowcll() { mPopupHeadViewy = View.inflate(getActivity(), R.layout.tankuang_layout, null); tetle = (TextView) mPopupHeadViewy.findViewById(R.id.tetle); textdz = (TextView) mPopupHeadViewy.findViewById(R.id.textdz); textwzdl = (TextView) mPopupHeadViewy.findViewById(R.id.textwzdl); textckxq = (TextView) mPopupHeadViewy.findViewById(R.id.textckxq); mHeadPopupclly = new PopupWindow(mPopupHeadViewy, AbsListView.LayoutParams.MATCH_PARENT, AbsListView.LayoutParams.MATCH_PARENT, true); // 在PopupWindow里面就加上下面代码,让键盘弹出时,不会挡住pop窗口。 mHeadPopupclly.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED); mHeadPopupclly.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); mHeadPopupclly.setBackgroundDrawable(new BitmapDrawable()); mHeadPopupclly.setOutsideTouchable(true); mHeadPopupclly.showAsDropDown(textviewid, 0, 0); textwzdl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mHeadPopupclly.dismiss(); } }); textckxq.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mHeadPopupclly.dismiss(); Toast.makeText(getActivity(), "查看详情", Toast.LENGTH_LONG).show(); } }); }注意:
1、
mHeadPopupclly = new PopupWindow(mPopupHeadViewy, AbsListView.LayoutParams.MATCH_PARENT, AbsListView.LayoutParams.MATCH_PARENT, true);
这句代码就是控制弹出框是铺满屏幕还是自适应、
2、
mHeadPopupclly.showAsDropDown(textviewid, 0, 0);这句话是这个弹框基于哪个控件之下,textviewid是控件名,后面两个是坐标
这是一个简单的自定义弹框,大神勿喷,有用的希望顶一下、、、
相关文章推荐
- Android记录8--简单自定义Launcher实现
- android:滑动挂断自定义View的简单实现
- Android自定义View 简单实现多图片选择控件
- android自定义画板,实现简单绘图功能
- android 自定义dialog的简单实现
- android 通过回调实现 完全自定义Dialog 简单易用
- Android自定义dialog简单实现方法
- Android自定义View 简单实现多图片选择控件
- Android自定义ViewGroup:实现简单的垂直方向线性布局(2)
- android 自定义view 实现简单贪吃蛇
- 【Android界面实现】自定义Gallery控件实现简单3D图片浏览器
- 简单谈谈android自定义相机的实现(上 android.hardware.Camera)
- Android中Spinner下拉列表(简单layout.xml,ArrayAdapter和自定义Adapter实现)及下拉框提示prompt问题
- Android自定义简单时间轴的实现
- 基于百度地图 Android SDKv1.3.5实现简单的定位功能,自定义标题栏
- android自定义SlideMenu源码详解之最简单侧滑实现
- Android之——史上最简单自定义开关按钮的实现
- Android自定义ListView,轻松实现上下拉刷新,一看就懂,一学就会,超简单。
- Android自定义View实现简单的圆形Progress效果
- Android自定义View——简单实现边缘凹凸电子票效果