圆角dialog实现过程

一、概述

原生的dialog一般不是很好看,在不同版本的手机上显示效果可能不太一样,所以我们就需要自定义dialog,这次给大家分享一下,圆角dialog的实现过程,也是自己学习的一个过程。

二、效果图

圆角dialog实现过程_第1张图片

三、实现过程

1、自定义圆角背景drawable

dialog_round.xml





    
    
    
    


    

2、在styles.xml中自定义自己的dialog的style风格

3、自定义dialog的contentView

is_clear_dialog.xml



    

    

    

    

    

        

        

        
    

4、在相应的点击事件里写相应的dialog展示代码

protected void initMyDialog()
	{
		final Dialog dialog = new Dialog(context, R.style.dialog);
		View view = View.inflate(context, R.layout.is_delete_dlalog, null);
		dialog.setContentView(view);
		Display display = getWindowManager().getDefaultDisplay();

		WindowManager.LayoutParams lp = dialog.getWindow().getAttributes();
		lp.width = display.getWidth() - 60;
		dialog.getWindow().setAttributes(lp);
		dialog.setCanceledOnTouchOutside(false);
		dialog.show();
		// 清除按钮点击事件
		view.findViewById(R.id.clear_all).setOnClickListener(
				new OnClickListener()
				{

					@Override
					public void onClick(View v)
					{
						SharedPreferencesUtils.saveString(context,
								"searchConfig", "");
						ll.setVisibility(View.GONE);
						dialog.dismiss();
					}
				});
		// 取消按钮点击事件
		view.findViewById(R.id.clear_cancle).setOnClickListener(
				new OnClickListener()
				{

					@Override
					public void onClick(View v)
					{
						dialog.dismiss();
					}
				});
	}

这个需求其实很简单,不需要自定义dialog,只要改一下dialog的style风格就好,大家如果有这方面的需求,可以做个参考,如果大家有什么建议或者问题,可以给我评论留言。


你可能感兴趣的:(圆角dialog实现过程)