package cn.sinata.xldutils.activitys;
|
|
import android.os.Build;
|
import android.os.Bundle;
|
import android.view.Window;
|
import android.view.WindowManager;
|
import cn.sinata.xldutils.R;
|
|
/**
|
* 弹窗式activity,例如选择照片弹窗,自定义分享窗等
|
*/
|
public abstract class DialogActivity extends BaseActivity {
|
/**
|
* 退出动画
|
* @return 动画资源id
|
*/
|
protected int exitAnim(){
|
return 0;
|
}
|
protected abstract int setContentLayout();
|
protected abstract void initView();
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
setShowSOP(false);
|
super.onCreate(savedInstanceState);
|
// supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
|
setContentView(setContentLayout());
|
setLayout();
|
|
if (Build.VERSION.SDK_INT>=11){
|
setFinishOnTouchOutside(true);
|
}
|
initView();
|
}
|
|
protected void setLayout(){
|
getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.WRAP_CONTENT);
|
}
|
|
/**
|
* 是否可点击空白区域消失,要求ApiLevel 11
|
* @param cancel 是否取消
|
* @see #setFinishOnTouchOutside
|
*/
|
protected void setCancelOnTouchOutside(boolean cancel){
|
if (Build.VERSION.SDK_INT>=11){
|
setFinishOnTouchOutside(cancel);
|
}
|
}
|
@Override
|
public void finish() {
|
super.finish();
|
// int exitAnim=exitAnim();
|
// if (exitAnim == 0)
|
// exitAnim = R.anim.popup_out;
|
// //设置退出动画,xml设置的无效
|
// overridePendingTransition(0, exitAnim);
|
}
|
}
|