如何以线性布局显示最后一个文本视图
Posted
技术标签:
【中文标题】如何以线性布局显示最后一个文本视图【英文标题】:How to display last textview in linear layout 【发布时间】:2017-10-27 07:57:53 【问题描述】:知道在LinearLayout
内显示最后一个文本视图在ScrollView
内吗?
这是我的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_
android:layout_
tools:context="com.example.qianonnphoon.tradeal.chat.ChatActivity"
android:background="#ffffff"
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:orientation="vertical">
<ScrollView
android:layout_
android:layout_weight="1"
android:layout_
android:id="@+id/scrollView">
<LinearLayout
android:layout_
android:layout_
android:orientation="vertical"
android:id="@+id/layout1">
</LinearLayout>
</ScrollView>
<include
layout="@layout/message_area"
android:layout_
android:layout_
android:gravity="bottom"
android:layout_marginTop="5dp"/>
</LinearLayout>
TextView
会在收到数据时添加到layout1
。所以一旦完成加载,我将在layout1
中有多个文本视图。但是,它显示第一个TextView
,然后我需要向下滚动才能看到最后一个TextView
。任何想法在完成加载时显示最后一个 TextView
?
这是我在接收数据时添加TextView
的代码
TextView textView = new TextView(ChatActivity.this);
textView.setText(message);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp.setMargins(0, 0, 0, 10);
textView.setLayoutParams(lp);
if(type == 1)
textView.setBackgroundResource(R.drawable.rounded_corner1);
else
textView.setBackgroundResource(R.drawable.rounded_corner2);
layout.addView(textView);
scrollView.fullScroll(View.FOCUS_DOWN);
【问题讨论】:
为什么 android:layout_weight="20" 滚动视图 @NileshRathod 因为我只是按照教程来创建它,还没有改变。但这是它不会先显示最后一个文本视图的原因吗? 我认为这个答案会对你有所帮助:***.com/a/3310376/8837156> 可能只是试试我下面的答案,让我知道它是否有效@phoon 我可以知道为什么这个问题被否决了吗? 【参考方案1】:这个解决方案对我有用
final ScrollView scrollview = ((ScrollView) findViewById(R.id.scrollview));
scrollview.post(new Runnable()
@Override
public void run()
scrollview.fullScroll(ScrollView.FOCUS_DOWN);
);
【讨论】:
以上是关于如何以线性布局显示最后一个文本视图的主要内容,如果未能解决你的问题,请参考以下文章