Scrollview中没有显示文字

时间:2016-08-06 08:08:44

标签: android uiscrollview chat

我正在制作一个我必须实现聊天功能的应用程序。我在聊天用户界面遇到问题。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:id="@+id/comment_rl"">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/comment_scrollView"
        android:layout_alignParentTop="true">

         <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/comment_ll">

         </LinearLayout>

    </ScrollView>

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignBottom="@id/comment_scrollView"
        android:background="#ffffff">

        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Back"
            android:id="@+id/comment_back_btn"
            android:layout_weight="1"
            android:layout_gravity="bottom" />

        <EditText
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:id="@+id/comment_editText"
            android:layout_weight="3" />

        <Button
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="Send"
        android:id="@+id/comment_send_btn"
        android:layout_weight="1"
        android:layout_gravity="bottom" />

    </LinearLayout>

</RelativeLayout>

this is the picture of my ui

在图片中,消息&#34; joool&#34;正在被正确发送并且它正在屏幕上显示,因为我可以在我的数据库中看到它但它实际上没有在ui中显示它在后退按钮后面或在屏幕外。所以我不确定如何解决这个问题?我被困在这2天了,似乎无法找到一种方法将文本保留在编辑文本之上。

public void onChildAdded(DataSnapshot dataSnapshot, String s) {
   String comment = (String) dataSnapshot.getValue();
   Log.d("Tag", "comment" + comment);
   LinearLayout.LayoutParams selected_qstn_comment_lp = 
   new LinearLayout.LayoutParams(
                    LinearLayout.LayoutParams.MATCH_PARENT,
                    LinearLayout.LayoutParams.WRAP_CONTENT);
   selected_qstn_comment_lp.setMargins(10,25,5,5);
   selected_qstn_comment_lp.gravity = Gravity.CENTER;
   TextView selected_qstn_comment = 
   new TextView(getApplicationContext());
   selected_qstn_comment.setTextSize(14.0f);
   selected_qstn_comment.setTextColor(Color.BLACK);
   selected_qstn_comment.setPadding(10,5,0,0);
   selected_qstn_comment.setText("\n" + comment + "\n");
   selected_qstn_comment.setLayoutParams(selected_qstn_comment_lp);
   ll.addView(selected_qstn_comment);
}

这是我填充应用的聊天部分的地方。

注意:scrollview实际上正在工作,因为我可以从上到下滚动。但它实际上没有包含问题的整个内容。我想这是因为我给予的利润?但我不确定,因为它应该实际包装内容。

1 个答案:

答案 0 :(得分:0)

更改您的布局如下:

...
<ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/comment_scrollView"
        android:layout_alignParentTop="true"
        android:layout_above="@+id/my_linear">

         <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/comment_ll">

         </LinearLayout>

</ScrollView>

<LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:id="@id/my_linear"
        android:background="#ffffff">

...
</LinearLayout>