Dialog基類封裝-----自定義dialog
阿新 • • 發佈:2018-12-06
該封裝類用於dialog中有比較多的業務邏輯
import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.support.annotation.NonNull; import android.view.LayoutInflater; import android.view.View; /** * @author xianyong dai * @version v1.0 * @Title: BaseDialog * @Description:對話方塊封裝類 * @date 2018/12/4 16:20 */ public abstract class BaseDialog extends Dialog { public BaseDialog(@NonNull Context context) { super(context); } public BaseDialog(@NonNull Context context, int themeResId) { super(context, themeResId); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LayoutInflater inflater = LayoutInflater.from(getContext()); View view = inflater.inflate(getLayoutId(), null); setContentView(view); initView(view); initData(); initListener(); } protected abstract int getLayoutId(); protected abstract void initView(View view); protected abstract void initData(); protected abstract void initListener(); protected abstract void setLayoutSize(); @Override public void show() { super.show(); setLayoutSize();//在show之後設定佈局寬高 } }