Ajuster la taille de la boîte de dialogue personnalisée dans Android

Je fais construire une alerte personnalisée de la boîte de dialogue pour mon application j'ai écrit le code et son travail, mais le seul problème est sa taille, il n'est pas d'ajuster en fonction de mon contenu dans la boîte de dialogue. ci-dessous mon code:

public class CustomDialogBoxActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button)findViewById(R.id.Button01main);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//TODO Auto-generated method stub
final Dialog myDialog = new Dialog(CustomDialogBoxActivity.this);
myDialog.setContentView(R.layout.dialog_sms_layout);
myDialog.setTitle("Select any one");
Button ok = (Button)myDialog.findViewById(R.id.buttonOK);
final RadioGroup radioGrp = (RadioGroup)myDialog.findViewById(R.id.radioGroupSmsDialog);
final CheckBox mob1 = (CheckBox)myDialog.findViewById(R.id.checkBoxMob1);
final CheckBox mob2 = (CheckBox)myDialog.findViewById(R.id.checkBoxMob2);
mob1.setText("9029691986");
mob2.setText("99263911766");
ok.setOnClickListener(this);
ok.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//TODO Auto-generated method stub
if(mob1.isChecked() && mob2.isChecked()) {
if(radioGrp.getCheckedRadioButtonId() == R.id.radioSms) {
String[] phoneArray = {mob1.getText().toString(),mob2.getText().toString()};
Log.v("MOB1",mob1.getText().toString());
Log.v("MOB2",mob2.getText().toString());
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Message",phoneArray);
}else if(radioGrp.getCheckedRadioButtonId() == R.id.radioBusinessCard) {
String[] phoneArray = {mob1.getText().toString(),mob2.getText().toString()};
Log.v("MOB1",mob1.getText().toString());
Log.v("MOB2",mob2.getText().toString());
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Business Card",phoneArray);
}
}else if(mob1.isChecked() && !mob2.isChecked()) {
if(radioGrp.getCheckedRadioButtonId() == R.id.radioSms) {
String[] phoneArray = {mob1.getText().toString()};
Log.v("MOB1",mob1.getText().toString());                                
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Message",phoneArray);
}else if(radioGrp.getCheckedRadioButtonId() == R.id.radioBusinessCard) {
String[] phoneArray = {mob1.getText().toString()};
Log.v("MOB1",mob1.getText().toString());                                
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Business Card",phoneArray);
}
}else if(!mob1.isChecked() && mob2.isChecked()) {
if(radioGrp.getCheckedRadioButtonId() == R.id.radioSms) {
String[] phoneArray = {mob2.getText().toString()};
Log.v("MOB2",mob2.getText().toString());
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Message",phoneArray);
}else if(radioGrp.getCheckedRadioButtonId() == R.id.radioBusinessCard) {
String[] phoneArray = {mob2.getText().toString()};
Log.v("MOB2",mob2.getText().toString());
Log.v("Mobile No", ""+phoneArray.toString());
sendSms("SMS Business Card",phoneArray);
}
}else if(!mob1.isChecked() && !mob2.isChecked()) {
Toast.makeText(getApplicationContext(), "Select atleast one number", Toast.LENGTH_SHORT).show();
}                       
}
});
myDialog.show();
}
});
}
public void sendSms(String message,String[] phoneNumber) {
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setData(Uri.parse("sms:"));
smsIntent.putExtra("sms_body", message);
smsIntent.putExtra("address", phoneNumber);
startActivity(smsIntent);       
}
}

C'est le sortie que je suis arriver sur le bouton cliquez sur

C'est mon main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="This is my main activity, from here, I want to display a dialog, 
after the user clicked the button below this text." />
<Button
android:id="@+id/Button01main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Show Dialog" />
</LinearLayout>

et c'est mon dialog_sms_layout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<RadioGroup
android:id="@+id/radioGroupSmsDialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<RadioButton
android:id="@+id/radioSms"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="SMS" />
<RadioButton
android:id="@+id/radioBusinessCard"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Card" />
</RadioGroup>
<CheckBox
android:id="@+id/checkBoxMob1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="Primary" />
<CheckBox
android:id="@+id/checkBoxMob2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Secondary" />
<Button
android:id="@+id/buttonOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="OK" />
</LinearLayout>

Je veux régler la boîte de dialogue taille s'il vous plaît aider. merci d'avance

source d'informationauteur prateek | 2012-04-20