bor*_*ges 27 android textview android-layout
我有一个垂直的里面LinearLayout
有两个TextView
.前者包含静态文本属性(它的文本永远不会更改),最后一个包含回归计时器.下图显示了两个项目:
我想消除两个文本都有顶部和底部的空白区域.我尝试了几种方法......
android:includeFontPadding="false"
android:lineSpacingMultiplier="1"
android:lineSpacingExtra="0dp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="0dp"
Run Code Online (Sandbox Code Playgroud)
......但他们都没有删除文本上方的空格.如何在没有任何额外空间的情况下使两个文本彼此靠近?
PS:我发现了类似的问题,但没有人回答.
完整的布局代码:
<LinearLayout
android:id="@+id/boxTime"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp" >
<TextView
android:id="@+id/textRemainingTime2"
android:layout_width="wrap_content"
android:layout_heigh="wrap_content"
android:layout_gravity="center"
android:gravity="center_horizontal"
android:textSize="70sp"
android:includeFontPadding="false"
android:lineSpacingMultiplier="1"
android:lineSpacingExtra="0dp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="0dp"
android:text="@string/title" />
<TextView
android:id="@+id/textRemainingTime"
android:layout_width="wrap_content"
android:layout_heigh="wrap_content"
android:layout_gravity="center"
android:gravity="center_horizontal"
android:includeFontPadding="false"
android:lineSpacingMultiplier="1"
android:lineSpacingExtra="0dp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="0dp"
android:textSize="107sp"
android:text="@string/timer" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
Bar*_*rak 44
尝试使用负边距.可能需要花一点时间才能正确使用数字,但我之前已经完成了它并且效果很好.
android:layout_marginTop="-5dp"
Run Code Online (Sandbox Code Playgroud)
Zso*_*any 16
使文本的基线等于TextView的底部.
public class BaselineTextView extends TextView {
public BaselineTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onDraw(Canvas canvas) {
int yOffset = getHeight() - getBaseline();
canvas.translate(0, yOffset);
super.onDraw(canvas);
}
}
Run Code Online (Sandbox Code Playgroud)
注意:为了避免切断下载调用setClipChildren(false)
您TextView
的父级ViewGroup
(android:clipChildren="false"
XML格式).
Kal*_*lle 12
默认情况下,TextView包含一些填充以为重音字符留出空间.你可以用以下方式关闭它:
android:includeFontPadding="false"
Run Code Online (Sandbox Code Playgroud)
要么
textView.setIncludeFontPadding(false)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20619 次 |
最近记录: |