每当在样式xml工作表上设置android:layout_gravity="bottom"
属性时,文本似乎在顶部被截断,并且底部会出现额外的空白行。我已设置此项,以便在显示太多文本时自动滚动到底部。它托管在DialogFragment
。
注意:显示的文字来自TextView.setText(Html.fromHtml())
,如果重要,则换行符为< br>
。打印的a只是测试数据。
在调试TextView时,看起来数据存在(在mText变量中),但它不会显示。
Dialog xml sheet:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:fillViewport="true" >
<TextView android:id="@+id/status_olcr_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
</ScrollView>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="?android:attr/buttonBarStyle" >
<Button
android:id="@+id/status_olcr_ok"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/ok"
style="?android:attr/buttonBarButtonStyle"
android:clickable="false" />
</LinearLayout>
在屏幕上显示正在发生的事情(但不应该):
这就是应该发生的事情(当没有layout_gravity属性时):
有什么想法发生的事吗?
更新:我已启用“显示版面边距”&#39;并且TextView在ScrollView边界上方(或其他方式)呈现。请参见下图:
答案 0 :(得分:0)
我建议您使用RelativeLayout,您可以将滚动视图设置为父视图的顶部,将按钮linerar布局设置为底部。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/llButton"
android:alignParentTop="true"
android:fillViewport="true" >
<TextView android:id="@+id/status_olcr_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
</ScrollView>
<LinearLayout
android:id="@+id/llButton"
android:alignParentBottom="true"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="?android:attr/buttonBarStyle" >
<Button
android:id="@+id/status_olcr_ok"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/ok"
style="?android:attr/buttonBarButtonStyle"
android:clickable="false" />
</RelativeLayout>
答案 1 :(得分:0)
结束了这个解决方案,虽然我仍然不了解最初发生的事情......
在相关的DialogFragment中:
scroll = (ScrollView)getView().findViewById(R.id.scroll);
scroll.post(new Runnable() {
@Override
public void run() {
scroll.fullScroll(View.FOCUS_DOWN);
}
});
答案 2 :(得分:0)
在textView标签内使用:
android:layout_gravity="top"