2010-09-15 12 views
7

Estoy haciendo una aplicación de chat simple y quiero mostrar globos similares al iphonesms app.Problemas con la aplicación de chat por globo

Así que estoy haciendo un Activity con un ListView con un cierto diseño. Estos son mis diseños:

/* Activity Layout */ 
<LinearLayout android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
    > 

    <ListView android:id="@+id/chat_log" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:stackFromBottom="true" 
     android:layout_marginTop="50dp" 
     android:transcriptMode="alwaysScroll" 
     android:layout_weight="1" 
     android:cacheColorHint="#00000000" 
     android:clickable="false" 
    /> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
    > 

    <EditText android:id="@+id/chat_input_text" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:layout_gravity="bottom" 
     /> 

     <Button android:id="@+id/chat_send_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/chat_send_button" 
     /> 

    </LinearLayout> 
</LinearLayout> 

Otros:

/* Row Layout */ 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/userprofile_view" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/chat_ballon_left" > 

<TextView 
    android:id="@+id/chat_message" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:paddingLeft="2dp" 
    android:text="haasdasdasdasdasdasdasdoo" /> 
</FrameLayout> 

Aquí está la result.

Mis problemas:

  • La línea gris, que me gustaría eliminar.
  • El texto no está utilizando todo el espacio.
  • De alguna manera, incluso pensé que he añadido android:clickable="false" los globos se pueden hacer clic.
+0

fija de la línea gris con: 'androide: Divisor = "@ android: el color/transparente"' – Macarse

+0

intentar establecer la alineación para el texto a la izquierda, tu imagen parece estar centrada. – schwiz

+0

@schwiz: En realidad fue un problema con el 9patch. Usar uno para Android hizo que se vea genial. Así que me falta cómo eliminar el resaltado de cada fila en 'ListView' – Macarse

Respuesta

5

El FrameLayout es innecesario, por lo tanto, utilice TextView como elemento raíz (con el fondo chat_ballon_left por supuesto). Establezca el ancho en match_parent para que el texto ocupe todo el espacio.

BTW agradable globos, no se olvide de tener versiones IPAP también :)

Cuestiones relacionadas