2010-08-20 12 views
5

Quiero utilizar FastScroll para mi lista de historial y usar fechas para secciones, pero el diálogo de alerta (que muestra letras en contactos) no se ajusta al tamaño del texto (quiero mostrar el mes y el día).Recuperar cuadro de diálogo de alerta FastScroll

¿Cómo puedo redimensionarlo?

+0

¿Algún progreso? ¿Has probado mi sugerencia? – gary

Respuesta

1

Mi solución. Deshabilitamos la función Fastscroll incorporada y usamos el código this con cambios menores. La variable mOverlaySize es responsable del tamaño de las alertas de sección.

1

¿Podría ser algo tan simple como usar setView en la clase AlertDialog? (Junto con algunas ediciones al .xml). Primero, tomé información sobre setView desde here.

public void setView (View view, int viewSpacingLeft, int viewSpacingTop, int viewSpacingRight, int viewSpacingBottom) 

Set the view to display in that dialog, specifying the spacing to appear around that view.  
Parameters: 
view The view to show in the content area of the dialog 
viewSpacingLeft Extra space to appear to the left of view 
viewSpacingTop Extra space to appear above view 
viewSpacingRight Extra space to appear to the right of view 
viewSpacingBottom Extra space to appear below view 

Y aquí algunos ejemplos de código del SDK (AlertDialogSamples.java), que utiliza setView.

case DIALOG_TEXT_ENTRY: 
      // This example shows how to add a custom layout to an AlertDialog 
      LayoutInflater factory = LayoutInflater.from(this); 
      final View textEntryView = factory.inflate(R.layout.alert_dialog_text_entry, null); 
      return new AlertDialog.Builder(AlertDialogSamples.this) 
       .setIcon(R.drawable.alert_dialog_icon) 
       .setTitle(R.string.alert_dialog_text_entry) 
       .setView(textEntryView) 
       .setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 

         /* User clicked OK so do some stuff */ 
        } 
       }) 
       .setNegativeButton(R.string.alert_dialog_cancel, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 

         /* User clicked cancel so do some stuff */ 
        } 
       }) 
       .create(); 
     } 
     return null; 

Y, por último, algunos de los archivos XML parece que se añade márgenes alrededor del texto (alert_dialog_text_entry.xml).

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/username_view" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_marginLeft="20dip" 
     android:layout_marginRight="20dip" 
     android:text="@string/alert_dialog_username" 
     android:gravity="left" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

Espero que ayude.

+0

¿Cómo se puede aplicar esto al FastScroll? Lo siento por la respuesta tardía. –

Cuestiones relacionadas