如何在TextView中使用字符分隔线

时间:2016-07-14 09:33:09

标签: android xml android-layout android-studio textview

我想在TextView中的每个字符之间加一条线。

TextView可以这样做吗?如果没有,我该怎么办?

4 个答案:

答案 0 :(得分:1)

单个textview无法执行此操作。所以

尝试

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/item1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:gravity="center"
        android:text="0"
        android:textSize="24sp" />

    <View
        android:layout_width="1dip"
        android:layout_height="40dip"
        android:background="#000000" />

    <TextView
        android:id="@+id/item2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:gravity="center"
        android:text="0"
        android:textSize="24sp" />

    <View
        android:layout_width="1dip"
        android:layout_height="40dip"
        android:background="#000000" />

    <TextView
        android:id="@+id/item3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:gravity="center"
        android:text="0"
        android:textSize="24sp" />

    <View
        android:layout_width="1dip"
        android:layout_height="40dip"
        android:background="#000000" />

    <TextView
        android:id="@+id/item4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:gravity="center"
        android:text="0"
        android:textSize="24sp" />

    <View
        android:layout_width="1dip"
        android:layout_height="40dip"
        android:background="#000000" />
</LinearLayout >

答案 1 :(得分:0)

您可以使用此库

https://github.com/pinball83/Masked-Edittext

      [![enter image description here][1]][1]
     <com.github.pinball83.maskededittext.MaskedEditText
            android:id="@+id/masked_edit_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="number"
            app:mask="*|*|*|*|*"
            app:notMaskedSymbol="*"
            app:maskIcon="@drawable/abc_ic_clear_mtrl_alpha"
            app:maskIconColor="@color/colorPrimary"
            />

enter image description here

enter image description here

答案 2 :(得分:0)

如果您从xml填充TextView,则可以执行以下操作

android:text="Line1: \n Line2 \n Line3"

您还可以使用android:lines="2"

指定行数

然后你可以用 \ n

分隔它们

此外,您可以执行以下操作(尝试更新代码中的文本时):

String newText = "Line 1"
           + System.getProperty ("line.separator")
           + "Line 2"
           + System.getProperty ("line.separator");

答案 3 :(得分:0)

试试这个,

  

main.xml中

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:layout_width="match_parent"
          android:padding="3dp"
          android:orientation="horizontal"
          android:background="@drawable/outline"
          android:layout_height="wrap_content">


<TextView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:textColor="#000000"
    android:gravity="center"
    android:text="0"
    android:textSize="20dp"/>

<View android:layout_width="2dp"
    android:layout_height="match_parent"
    android:background="#353535"/>

<TextView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:textColor="#000000"
    android:text="0"
    android:gravity="center"
    android:textSize="20dp"/>

<View android:layout_width="2dp"
    android:layout_height="match_parent"
    android:background="#353535"/>

<TextView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:textColor="#000000"
    android:gravity="center"
    android:text="0"
    android:textSize="20dp"/>

<View android:layout_width="2dp"
    android:layout_height="match_parent"
    android:background="#353535"/>


<TextView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:textColor="#000000"
    android:gravity="center"
    android:text="0"
    android:textSize="20dp"/>

<View android:layout_width="2dp"
    android:layout_height="match_parent"
    android:background="#353535"/>

<TextView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:gravity="center"
    android:textColor="#000000"
    android:text="0"
    android:textSize="20dp"/>

  </LinearLayout>
  

outline.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/listview_background_shape">
<stroke android:width="2dp" android:color="#353535" />
<padding android:left="2dp"
    android:top="2dp"
    android:right="2dp"
    android:bottom="2dp" />
<corners android:radius="0dp" />
<solid android:color="#ffffffff" />
</shape>
  

截图

screenshot

这可能有助于你