Xml布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/local_popup_bg" android:orientation="horizontal" > <!-- 拨打电话 --> <LinearLayout android:id="@+id/ll_call" android:layout_width="40dip" android:layout_height="wrap_content" android:orientation="vertical" > <ImageView android:layout_width="40dip" android:layout_height="wrap_content" android:src="@android:drawable/ic_menu_call" /> <TextView android:layout_width="40dip" android:layout_height="wrap_content" android:gravity="center" android:text="电话" /> </LinearLayout> <!-- 发送短信 --> <LinearLayout android:id="@+id/ll_sms" android:layout_width="40dip" android:layout_height="wrap_content" android:layout_marginLeft="10dip" android:orientation="vertical" > <ImageView android:layout_width="40dip" android:layout_height="wrap_content" android:src="@android:drawable/ic_menu_send" /> <TextView android:layout_width="40dip" android:layout_height="wrap_content" android:gravity="center" android:text="短信" /> </LinearLayout> </LinearLayout> |
Popu 代码实现
//加载布局 View contentView=View.inflate(getApplicationContext(), R.layout.popu_dialog, null); //找到相应的控件进行操作1,拨打电话,2,发送短信 LinearLayout ll_call=(LinearLayout)contentView.findViewById(R.id.ll_call); LinearLayout ll_sms=(LinearLayout) contentView.findViewById(R.id.ll_sms); //弹出popu对话框 pw=new PopupWindow(contentView, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); //背景透明 pw.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); //宽,高的数组 int[] location=new int[2]; view.getLocationInWindow(location); pw.showAtLocation(view, Gravity.LEFT|Gravity.TOP, 30, location[1]); |