如何在文本之间给出相等的间距?

时间:2016-06-18 11:39:34

标签: android textview

我必须在文本视图中以这种格式显示以下数据。

1 Address : Sample address.
 2 Contact : contact1, contact2
 3 Email : sampleemail@hgjasd.com.
 4 Website : www.sample.com.
 5 Attached with : Apolo.
 6 Services : Heart Transplant.

但是“:”没有正确对齐,它们之间没有相等的空格 我怎样才能实现这一目标

这是我试过的

if (mrecordsObj.has("website")) {

            if(!mrecordsObj.getString("website").isEmpty())
            mBuilder.append("Website    :" + mrecordsObj.getString("website") + "\n"+"\n");

        }
        if (mrecordsObj.has("extrainfo")) {

            if(!mrecordsObj.getString("extrainfo").isEmpty())
            mBuilder.append("Extrainfo  :" + mrecordsObj.getString("extrainfo") + "\n"+"\n");

        }

3 个答案:

答案 0 :(得分:0)

如果这是你的字符串:

  

1地址:样本地址。 2联系人:contact1,contact2 3电子邮件:sampleemail@hgjasd.com。 4网站:www.sample.com。 5附:Apolo。 6bServices:心脏移植

然后您需要使用\n\t字符在显示时正确对齐。

  

1地址: \ t 示例地址。 \ n 2联系人: \ t contact1,contact2 \ n 3电子邮件: \ t sampleemail@hgjasd.com 。 \ n 4网站: \ t www.sample.com。 \ n 5附: \ t Apolo。 \ n 6b服务: \ t 心脏移植

因此\t字符会添加一个标签,\n代表新行。当您使用TextView显示此字符串时,它应该正确对齐和格式化。

答案 1 :(得分:0)

尝试以下,

   if (mrecordsObj.has("website")) {

        if(!mrecordsObj.getString("website").isEmpty())
        mBuilder.append("Website\t : \t" + mrecordsObj.getString("website") + "\n\n");

    }
    if (mrecordsObj.has("extrainfo")) {

        if(!mrecordsObj.getString("extrainfo").isEmpty())
        mBuilder.append("Extrainfo\t : \t" + mrecordsObj.getString("extrainfo") + "\n\n");

    }

答案 2 :(得分:0)

亲爱的尝试采取这样的布局..

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_backgroud"
android:orientation="vertical"
android:padding="5dp">


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

<TextView
    android:id="@+id/lbl1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"

    android:textColor="@color/colorPrimary"
    android:layout_alignParentTop="true"
    android:text="1. Address"
    android:layout_weight="0.50"

    />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="Sample address"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"
        />

</LinearLayout>


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/lbl2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="2. Contact"
        android:layout_weight="0.50"

        />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="contact1, contact2"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"

        />

</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/lbl3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="3. Email"
        android:layout_weight="0.50"

        />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="sampleemail@hgjasd.com"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"

        />

</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/lbl4"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="4. Website"
        android:layout_weight="0.50"

        />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv4"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="www.sample.com"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"

        />

</LinearLayout>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/lbl5"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="5. Attached with"
        android:layout_weight="0.50"

        />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv5"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="Apollo"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"

        />

</LinearLayout>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/lbl6"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="6. Service"
        android:layout_weight="0.50"

        />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv6"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="Heart Transplant."
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"

        />

</LinearLayout>

您可以设置代码

的文字

如果你想在列表中这个而不是只占一行并根据你的json设置文本。

如果你采用布局而不是根据你的json添加行,使用inflate函数添加行,使用addview方法也可以...

如果你想动态做而不是这样做

首先采取行..

row.xml

    <?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:weightSum="1"
    android:orientation="horizontal">

<TextView
    android:id="@+id/lbl1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"

    android:textColor="@color/colorPrimary"
    android:layout_alignParentTop="true"
    android:text="1. Address"
    android:layout_weight="0.50"

    />

    <TextView

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text=":"

        />
    <TextView
        android:id="@+id/tv1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"

        android:textColor="@color/colorPrimary"
        android:layout_alignParentTop="true"
        android:text="Sample address"
        android:layout_marginLeft="5dp"
        android:layout_weight="0.50"
        />

</LinearLayout>

Yourmain.xml

    <?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:weightSum="1"
    android:orientation="vertical">

机器人:ID = “@ + ID /主”         

打开你的代码

.java文件

for(int i=0;i<jsonarray.length;i++)
 {
 LinearLayout item = (LinearLayout )findViewById(R.id.main);
 View child = getLayoutInflater().inflate(R.layout.row, null);
 item.addView(child);

  TextView lbl1 = (TextView)child .findViewById(R.id.lbl1 );
  TextView tv1 = (TextView)child .findViewById(R.id.tv1 );



   if (mrecordsObj.has("website")) {

        if(!mrecordsObj.getString("website").isEmpty())
        lbl1.append("Website");
        tv1.append(mrecordsObj.getString("website"));


    }
   else if (mrecordsObj.has("extrainfo")) {


        lbl1.append("Extrainfo  ");
        tv1.append(mrecordsObj.getString("extrainfo"));


    }

 }

或者照你做..做..