In my app, I tried to make custom dialog so I wrote an XML for that and In my XML its appearing like this,
dialog.xml,
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="50.0dip"
android:layout_marginTop="5.0dip"
android:layout_margin="5.0dip">
<TextView android:id="@+id/textViewOTPDialogMessage" android:text="@string/OTPDialogActivityMessage" android:gravity="center" android:textStyle="bold" android:textColor="#ff4d4d4d"
android:layout_width="wrap_content" android:textSize="18dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true" />
<View android:layout_marginTop="1.0dip" android:layout_below="@+id/textViewOTPDialogMessage" android:layout_width="fill_parent" android:layout_height="1dp" android:background="@android:color/darker_gray"/>
</RelativeLayout>
<RelativeLayout android:layout_width="fill_parent" android:layout_height="50.0dip" android:layout_marginTop="5.0dip">
<TextView android:text="E-Mail Id OTP* " android:id="@+id/textViewEmailOTP" android:textStyle="bold" android:textColor="#ff4d4d4d"
android:gravity="left" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginLeft="10.0dip" android:layout_alignParentLeft="true"
android:layout_centerVertical="true" />
<EditText
android:id="@+id/editTextEmailIdOtp" android:background="@drawable/custom_edittext"
android:paddingLeft="5.0dip" android:layout_width="fill_parent" android:layout_height="35.0dip"
android:layout_marginLeft="150.0dip" android:layout_marginRight="10.0dip"
android:singleLine="true" android:layout_alignParentLeft="true"
android:layout_centerVertical="true" android:imeOptions="actionNext" />
</RelativeLayout>
<RelativeLayout android:layout_width="fill_parent" android:layout_height="50.0dip">
<TextView android:text="Mobile OTP* " android:id="@+id/textViewMobileOTP" android:textStyle="bold" android:textColor="#ff4d4d4d"
android:gravity="left" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginLeft="10.0dip" android:layout_alignParentLeft="true"
android:layout_centerVertical="true" />
<EditText
android:id="@+id/editTextMobileOtp" android:background="@drawable/custom_edittext"
android:paddingLeft="5.0dip" android:layout_width="fill_parent" android:layout_height="35.0dip"
android:layout_marginLeft="150.0dip" android:layout_marginRight="10.0dip"
android:singleLine="true" android:layout_alignParentLeft="true"
android:layout_centerVertical="true" android:imeOptions="actionNext" />
</RelativeLayout>
<Button android:id="@+id/btnValidate" android:text="Validate" android:textSize="18.0sp" android:textStyle="bold" android:textColor="#ff4d4d4d"
android:layout_gravity="center_horizontal" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginTop="10.0dip" android:layout_marginBottom="10.0dip" />
</LinearLayout>
and when I am running it on my device then,
Its coming like this,
I tried to increase width size of dialog programmatically but getting no difference,
private void callOTPDialog()
{
Dialog myDialog = new Dialog(this);
myDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
myDialog.getWindow().setLayout(600, 400);
myDialog.setContentView(R.layout.otpdialog);
myDialog.setCancelable(false);
Button btnValidate = (Button) myDialog.findViewById(R.id.btnValidate);
EditText email = (EditText) myDialog.findViewById(R.id.editTextEmailIdOtp);
EditText mobile = (EditText) myDialog.findViewById(R.id.editTextMobileOtp);
myDialog.show();
btnValidate.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//your login calculation goes here
}
});
}
In XML I have mentioned these lines,
android:layout_width="fill_parent"
android:layout_height="wrap_content"
then also don't know what is happening here.
What to do now,
Please help,
Thanks.
Try like below:
LayoutInflater factory = LayoutInflater.from(Splash.this);
View DialogView = factory.inflate(
R.layout.custom_progress_layout, null);
Dialog main_dialog = new Dialog(Splash.this,R.style.Theme_Dialog);
main_dialog.setContentView(DialogView);
main_dialog.show();
And create Theme_Dialog
into values\styles.xml
<style name="Theme_Dialog" parent="android:Theme.Holo.Dialog">
<item name="android:backgroundDimEnabled">false</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
</style>
This is perfect working in my case.
Update: you just need to change both your RelativeLayout
attribute width with android:layout_width="wrap_content"
into your layout.xml
.