下面列出了android.widget.PopupWindow#OnDismissListener ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* 设置一个销毁监听器
*
* @param listener 销毁监听器对象
* @deprecated 请使用 {@link #addOnDismissListener(BasePopupWindow.OnDismissListener)}
*/
@Deprecated
@Override
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
if (listener == null) {
return;
}
addOnDismissListener(new DismissListenerWrapper(listener));
}
public boolean setOutsideTouchable(boolean outsideTouchable, PopupWindow.OnDismissListener onDismiss) {
boolean ret = false;
if (mPopupWindow.isOutsideTouchable() ^ outsideTouchable) {
mPopupWindow.setOutsideTouchable(outsideTouchable);
mPopupWindow.setFocusable(!outsideTouchable);
ret = true;
}
mPopupWindow.setOnDismissListener(onDismiss);
return ret;
}
/**
* 创建popupWindow dismiss事件
*/
private PopupWindow.OnDismissListener createPopupWindowListener(final PopupWindow popupWindow) {
return new PopupWindow.OnDismissListener() {
@Override public void onDismiss() {
AriaManager.getInstance().removeReceiver(popupWindow);
}
};
}
/**
* Creates an DropdownPopupWindow with specified parameters.
* @param context Application context.
* @param anchorView Popup view to be anchored.
*/
public DropdownPopupWindow(Context context, View anchorView) {
super(context, null, 0, R.style.DropdownPopupWindow);
mContext = context;
mAnchorView = anchorView;
mAnchorView.setId(R.id.dropdown_popup_window);
mAnchorView.setTag(this);
mLayoutChangeListener = new OnLayoutChangeListener() {
@Override
public void onLayoutChange(View v, int left, int top, int right, int bottom,
int oldLeft, int oldTop, int oldRight, int oldBottom) {
if (v == mAnchorView) DropdownPopupWindow.this.show();
}
};
mAnchorView.addOnLayoutChangeListener(mLayoutChangeListener);
super.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
if (mOnDismissListener != null) {
mOnDismissListener.onDismiss();
}
mAnchorView.removeOnLayoutChangeListener(mLayoutChangeListener);
mAnchorView.setTag(null);
}
});
setAnchorView(mAnchorView);
Rect originalPadding = new Rect();
getBackground().getPadding(originalPadding);
setVerticalOffset(-originalPadding.top);
}
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mPopup.setOnDismissListener(listener);
}
/**
* 设置弹窗关闭监听
* @param onDismissListener listener
*/
public CustomPopupWindow.PopupWindowBuilder setOnDissmissListener(PopupWindow.OnDismissListener onDismissListener) {
this.mCustomPopWindow.mOnDismissListener = onDismissListener;
return this;
}
void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mPopup.setOnDismissListener(listener);
}
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mPopup.setOnDismissListener(listener);
}
public void setOutsideTouchable(boolean outsideTouchable, PopupWindow.OnDismissListener onDismiss) {
if (mPopup.setOutsideTouchable(outsideTouchable, onDismiss) && isShowing()) {
dismiss();
doShow();
}
}
public void setOutsideTouchable(boolean outsideTouchable, PopupWindow.OnDismissListener onDismiss) {
if (mPopup.setOutsideTouchable(outsideTouchable, onDismiss) && isShowing()) {
dismiss();
doShow();
}
}
@Override
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
public void setOutsideTouchable(boolean outsideTouchable, PopupWindow.OnDismissListener onDismiss) {
mFloatingToolbar.setOutsideTouchable(outsideTouchable, onDismiss);
}
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mPopup.setOnDismissListener(listener);
}
public ListPopMenu(Context context,BaseAdapter listAdapter,AdapterView.OnItemClickListener listener,PopupWindow.OnDismissListener dismissListener) {
// TODO Auto-generated constructor stub
this(context,R.layout.popdialog,listAdapter,listener,dismissListener,-1);
}
/**
* Sets a listener to receive a callback when the popup is dismissed.
*
* @param listener The listener to be notified.
*/
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
/**
* Sets a listener to receive a callback when the popup is dismissed.
*
* @param listener The listener to be notified.
*/
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
/**
* Sets a listener to receive a callback when the popup is dismissed.
*
* @param listener The listener to be notified.
*/
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
/**
* Sets a listener to receive a callback when the popup is dismissed.
*
* @param listener The listener to be notified.
*/
public void setOnDismissListener(PopupWindow.OnDismissListener listener) {
mOnDismissListener = listener;
}
/**
* Set listener on window dismissed.
*
* @param listener
*/
public void setOnDismissListener(
final PopupWindow.OnDismissListener listener) {
mWindow.setOnDismissListener(listener);
}