美文网首页
一个自定义dialog

一个自定义dialog

作者: 天之大任 | 来源:发表于2016-03-09 12:46 被阅读214次

主要是用于dialog的内容变化但是部分内容不变复用方便写的

publicclassMainDialogextendsDialogimplementsView.OnClickListener{

privateViewroot;

privateViewGroupcontainer;

privateButtonbtnObtain;

privateIWheelPickerpicker;

privateStringdata;

publicMainDialog(Contextcontext) {

super(context);

requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setBackgroundDrawable(newColorDrawable(Color.TRANSPARENT));

setCanceledOnTouchOutside(true);

setOnDismissListener(newOnDismissListener() {

@Override

publicvoidonDismiss(DialogInterfacedialog) {

container.removeAllViews();

}

});

//我们为dialog设置一个布局文件

root=getLayoutInflater().inflate(R.layout.ac_main_dialog,null);

//跟布局里面的动态添加布局的容器

container=(ViewGroup) root.findViewById(R.id.main_dialog_container);

//公用的确认按钮

btnObtain=(Button) root.findViewById(R.id.btn_obtain);

btnObtain.setOnClickListener(this);

}

//复写他的setcontentview()方法,将我们自定义的布局添加到我们的跟容器中,这样可以在代码中灵活的设置了,

@Override

publicvoidsetContentView(Viewview) {

if(viewinstanceofIWheelPicker) {

picker=(IWheelPicker) view;

picker.setOnWheelChangeListener(newAbstractWheelPicker.SimpleWheelChangeListener() {

@Override

publicvoidonWheelScrollStateChanged(intstate) {

if(state!=AbstractWheelPicker.SCROLL_STATE_IDLE) {

btnObtain.setEnabled(false);

}else{

btnObtain.setEnabled(true);

}

}

@Override

publicvoidonWheelSelected(intindex,Stringdata) {

MainDialog.this.data=data;

}

});

}

container.addView(view);

super.setContentView(root);

}

@Override

publicvoidonClick(Viewv) {

switch(v.getId()) {

caseR.id.btn_obtain:

Toast.makeText(getContext(), data,Toast.LENGTH_SHORT).show();

break;

}

}

}

相关文章

  • Dialog

    安卓dialog的使用+如何自定义dialog自定义Dialog自定义Dialog 自定义

  • 一个漂亮的自定义Dialog

    这是一个自定义的dialog项目 自定义的dialog,具有如下特点 圆角的dialog View 圆形图片的ti...

  • 自定义Dialog

    自定义Dialog的主题 自定义Dialog的布局文件 继承Dialog 并在onCreate方法中将布局设置给D...

  • 自定义dialog时遇见的空指针异常

    记录一个自定义dialog时遇见的空指针异常 自定义dialog代码 //此处报空指针异常setContentVi...

  • 实现图片Dialog中带ViewPager

    效果图 实现思路 自定义Dialog,为Dialog添加自定义布局,自定义PagerAdapter以及PageTr...

  • 【Android】自定义全屏dialog

    一、在themes.xml中添加自定义dialog的样式 二、创建dialog基类 三、创建自定义dialog的布...

  • Android圆角对话框Dialog

    需求:模仿iOS样式Dialog对话框。 自定义Dialog 核心代码: Dialog样式: Dialog布局文件...

  • Android自定义Dialog及其点击事件

    在项目开发中,经常要用到dialog。但是系统的dialog太丑,所有我们要自定义dialog。下面的先介绍自定义...

  • Flutter Dialog 动画

    本文对 Dialog 做一次系统性学习记录,包括系统 Dialog,自定义 Dialog,Dialog 动画。 A...

  • Dialog自定义布局

    因为有很多时候需要弹出一个Dialog,但系统自带的Dialog太丑了,于是写一个自定义Dialog布局的模板。 ...

网友评论

      本文标题:一个自定义dialog

      本文链接:https://www.haomeiwen.com/subject/svozkttx.html