android dialog的圆角不显示问题


//第一套代码
//控制代码
package com.myapp.mydialog;

import com.myapp.myapptest.R;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.Window;

public class MyDialog extends Dialog{

	public MyDialog(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}
	@Override
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);//需要在设置内容之前定义
		setContentView(R.layout.dialog_one);
	}
     
}

//视图代码



    
   
    


//资源代码



    
    

显示结果
android dialog的圆角不显示问题_第1张图片


------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第二套代码

package com.myapp.mydialog;

import com.myapp.myapptest.R;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.Window;

public class MyDialog extends Dialog{

	public MyDialog(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}
	@Override
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		//requestWindowFeature(Window.FEATURE_NO_TITLE);//需要在设置内容之前定义--------------------->改变处
		setContentView(R.layout.dialog_one);
	}
     
}

其他不变

android dialog的圆角不显示问题_第2张图片

对比两幅图,结果显而易见

解决方法:加上语句getWindow().setBackgroundDrawableResource(android.R.color.transparent); 

解决后:

package com.myapp.mydialog;

import com.myapp.myapptest.R;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;

public class MyDialog extends Dialog{

	public MyDialog(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}
	
	
	@Override
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);//需要在设置内容之前定义
		getWindow().setBackgroundDrawableResource(android.R.color.transparent); 
		setContentView(R.layout.dialog_one);
	}
     
}
 
  

你可能感兴趣的:(android问题解决)