以编程方式将视图插入TextView

时间:2015-07-17 16:45:20

标签: android parsing hyperlink textview

我正在设置一个解析系统,我在其中读取TextView中的内容,并为文本中发现的每个链接创建一个视图。目前,我在textview下面有一个带有膨胀视图的线性布局。如何将这些视图直接移到链接内容下面的textview中?

例如,我在这里有两个链接:

  

链接#1

     

链接#2

以下我有

  

[Link#1 bubble] [Link#2 bubble]

我试图让它看起来像这样

  

链接#1

     

[Link#1 bubble]

     

链接#2

     

[Link#2 bubble]

修改

没有两个单独的TextView。有一个带有两行文本的TextView!

我正在寻找的例子:

enter image description here

3 个答案:

答案 0 :(得分:0)

可能有多种方法可以做到这一点。我会这样做,假设您使用View的布局文件:

  1. 使用相对布局并在文本视图上放置透明的图像视图。
  2. 使用TextView的顶部和底部,将图像视图的右侧与TextView的右侧以及图像视图的顶部和底部对齐。这将它绑定到文本视图的右侧并在textview中包含它。
  3. 默认视图为GONE的可见性。
  4. 如果您有某些内容,请将imageview设置为内容并更改可见性。
  5. 一些问题: 1.因为图像视图是文本视图的ONTOP,所以它可能导致与textview的交互问题。 2.您可以将ImageView放在TextView后面,但是您必须使用文本视图的透明度。这对#1有帮助。

    布局的一些伪造示例代码:

    <RelativeLayout ...>
        <TextView android:id="@+id/tv" />
        <ImageView android:id="@+id/bubble" android:layout_alignTop="@id/tv" android:layout_alignBottom="@id/tv" android:layout_alignRight="@id/tv" android:visibility="gone" ...>
    </RelativeLayout>
    

答案 1 :(得分:0)

你可以像这样设置

    TextView textView=(TextView)findViewById(R.id.tv);
    textView.setBackgroundDrawable(R.drawable.image);

如果您没有可绘制的图像

,也可以指定Uri

<强>已更新 要将该textview创建为链接,您可以执行类似的操作

Linkify.addLinks(textView,Linkify.WEB_URLS);

答案 2 :(得分:0)

我决定使用多个textview系统。我将在插入数据的点处拆分内容字符串,并将膨胀的视图放在两个文本视图之间。希望能为我做到这一点!