how to set margin in Dialog
android, dialog, webview
Solution
I did a similar smiley dialog. I extend dialog
public class SmileCustomDialog extends Dialog {
Context mcontext;
GridView mGridview;
public GridView getGridview() {
return mGridview;
}
public SmileCustomDialog(final Context context) {
super(context, R.style.SlideFromBottomDialog);
this.mcontext = context;
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.emocategorydialog, null);
mGridview = (GridView) v.findViewById(R.id.emogrid);
mGridview.setSelector(new ColorDrawable(Color.TRANSPARENT));
ImageAdapter mAdapter = new ImageAdapter(mcontext);
mGridview.setAdapter(mAdapter);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.setContentView(v);
WindowManager.LayoutParams params = this.getWindow().getAttributes();
this.setCanceledOnTouchOutside(true);
params.y = -100;
this.getWindow().setAttributes(params);
}
}
But the essential is
WindowManager.LayoutParams params = yourDialog.getWindow().getAttributes(); // change this to your dialog.
params.y = -100; // Here is the param to set your dialog position. Same with params.x
yourDialog.getWindow().setAttributes(params);
Just add this before your show your dialog.
Problem
I have used `Dialog` for display ad in my Andorid app.But I have to display this `Dialog` about 50dp top from buttom so i think we should set `Dialog` Gravity buttom and set its buttom margine 50dp.But i'm unable to use margin in `Dialog`.so please can suggest me how to solve this. XML: ``` <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/popup_element" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/dialogback" android:orientation="vertical" > <WebView android:id="@+id/webView" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> ``` Java: ``` final Dialog dialog = new Dialog(this); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0)); LayoutInflater inflator = (LayoutInflater) getApplicationContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view = inflator.inflate(R.layout.ad, null, false); dialog.setContentView(view); dialog.getWindow().setGravity(Gravity.BOTTOM); dialog.setCancelable(true); WebView webView = (WebView) dialog.findViewById(R.id.webView); webView.loadUrl(""); webView.setWebViewClient(new MyWebViewClient()); webView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub dialog.dismiss(); } }); dialog.show(); ```