2017-02-10 2 views
-4

У меня есть это приложение для чата, но потому что у него есть только один textview, который добавляется. Я не знаю, как сделать его более презентабельным по дизайну. Я узнал код из Интернета, и это самый простой способ Я могу это сделать, ты поможешь мне, ребята?Как создать мое приложение для чата

Вот код.

private String chat_msg,chat_user_name; 

private void append_chat_conversation(DataSnapshot dataSnapshot) { 

    Iterator i = dataSnapshot.getChildren().iterator(); 

    while (i.hasNext()){ 
     chat_msg = (String) ((DataSnapshot)i.next()).getValue(); 
     chat_user_name = (String) ((DataSnapshot)i.next()).getValue(); 
     chat_conversation.setGravity(Gravity.BOTTOM); 

     if(chat_user_name.contains(pref.getString("username","").toString())){ 
      chat_conversation.append(chat_user_name + " : " + chat_msg + " \n"); 

     }else { 
      chat_conversation.append(chat_user_name + " : " + chat_msg + " \n"); 
     } 
    } 
} 

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:layout_height="match_parent"> 

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:id="@+id/btn_send" 
    android:src="@drawable/send"/> 


<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="textPersonName" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:id="@+id/msg_input" 
    android:layout_toLeftOf="@+id/btn_send" 
    android:layout_toStartOf="@+id/btn_send" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="10dp" 
     android:textSize="15sp" 
     android:textColor="#000000" 
     android:scrollbars = "vertical" 
     android:id="@+id/textView" 
     android:layout_above="@+id/msg_input" /> 


</RelativeLayout> 

Спасибо, господа!

ответ

0

Попробуйте добавить TextView динамически для каждого сообщения.

Чтобы добавить TextView динамически, проверить этот пример кода

//Get the parent layout 
RealtiveLayout relativeLayout = (RealtiveLayout)findViewById(R.id.parent_layout); 

//New TextView 
TextView textView = new TextView(this); 

//Layout Params 
textView1.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
     LayoutParams.WRAP_CONTENT)); 
textView.setText("Your text"); 

//Add to the parent 
relativelayout.addView(textView1); 
+0

Как я могу добавить новый взгляд ниже существующего один сэр? Поскольку он просто перекрывается –

+0

Используйте LinearLayout вместо RelativeLayout и установите ориентацию по вертикали. –

+0

Когда я сменил его на LinearLayout, сэр текст больше не показывался. –