自定义dialog 通过DialogFragment

来源:互联网 发布:java如何解压rar文件 编辑:程序博客网 时间:2024/05/20 20:40

自定义 DialogFragment

android.app.DialogFragment;

public class ProgressRemarkDialog extends DialogFragment  {private String paraRemark;private EditText mDlgremark;private Button mOkBtn,mCancelBtn;private ProgressRemarkDialogListener mDlgListener;private Context mcontext;private View view;public ProgressRemarkDialog(Context context,ProgressRemarkDialogListener dialogListener) {mcontext=context;mDlgListener=dialogListener;}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {//去掉标题栏getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);getDialog().getWindow().setBackgroundDrawableResource(android.R.color.transparent);view=inflater.inflate(R.layout.mytask_details_seekbar_askdialog, container);//view.setBackgroundResource(resid)initView();return view;}private void initView() {mDlgremark=(EditText)view.findViewById(R.id.task_detail_dlg_et_processmemo);mOkBtn=(Button)view.findViewById(R.id.task_detail_dlg_btn_ok);mOkBtn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {//获取输入的内容paraRemark=mDlgremark.getText().toString();//传出参数给调用者 父activity,也就是将对话框值传给 父activitymDlgListener.onClick(v, paraRemark);dismiss();}});mCancelBtn=(Button)view.findViewById(R.id.task_detail_dlg_btn_cancel);mCancelBtn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {mDlgListener.onClick(v, "");dismiss();}});}//回调public interface ProgressRemarkDialogListener{public void onClick(View view,String paraRemark);   }}

这里是调用

ProgressRemarkDialog dlg=new ProgressRemarkDialog(mContext, new ProgressRemarkDialogListener() {@Overridepublic void onClick(View view, String paraRemark) {switch(view.getId()){                         case R.id.task_detail_dlg_btn_ok:  <span style="white-space:pre"></span>//这是从dlg 传出来的值String completeDegreeDesc=paraRemark;                        break;                         case R.id.task_detail_dlg_btn_cancel:                                              break;     }}});dlg.show(getFragmentManager(), "");

ok ,如果有不足之处,希望大家指正,谢谢啦


参照了一下 两个大神的博客

http://blog.csdn.net/lmj623565791/article/details/37815413/   红洋大笑

http://blog.csdn.net/harvic880925/article/details/42712777  harvic880925  和这位仁兄的



0 0
原创粉丝点击