您可以使用
FlowTextView
扩展RelativeLayout的文本视图。文本将环绕布局中的所有子视图。
此小部件基本支持使用HTML的HTML。fromHtml(“<您的标记…/>”)它将识别链接、粗体斜体等。
添加
jitpack
给你的
build.gradle
在存储库末尾:
repositories {
// ...
maven { url "https://jitpack.io" }
}
添加
dependency
:
compile 'com.github.deano2390:FlowTextView:2.0.5'
示例代码:如何使用
FlowText视图
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/cv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
card_view:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp">
<TextView
android:id="@+id/news_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:background="#FFFFFF"
android:padding="4dp"
android:text="Lorem ipsum dolor sit amet, consectetur adipiscing e"
android:textStyle="bold" />
<uk.co.deanwild.flowtextview.FlowTextView
android:id="@+id/ftv"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image_thumb"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_margin="2dp"
android:src="@drawable/abc" />
</uk.co.deanwild.flowtextview.FlowTextView>
</LinearLayout>
</android.support.v7.widget.CardView>
JAVA代码
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FlowTextView flowTextView = (FlowTextView) findViewById(R.id.ftv);
Spanned html = Html.fromHtml("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut dui pellentesque, auctor ipsum id, ultrices nisl. Donec a enim tincidunt, cursus ante in, ultricies arcu. Suspendisse luctus eget neque et dignissim. Mauris libero erat, tincidunt sed fermentum sit amet, porttitor eu nulla. Integer interdum consequat elementum. Ut dictum dignissim sollicitudin. In eu nisl vestibulum, commodo nisl non, fermentum tortor. Pellentesque mattis finibus leo, efficitur porta urna posuere nec.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut dui pellentesque, auctor ipsum id, ultrices nisl. Donec a enim tincidunt, cursus ante in, ultricies arcu. Suspendisse luctus eget neque et dignissim. Mauris libero erat, tincidunt sed fermentum sit amet, porttitor eu nulla. Integer interdum consequat elementum. Ut dictum dignissim sollicitudin. In eu nisl vestibulum, commodo nisl non, fermentum tortor. Pellentesque mattis finibus leo, efficitur porta urna posuere nec.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ut dui pellentesque, auctor ipsum id, ultrices nisl. Donec a enim tincidunt, cursus ante in, ultricies arcu. Suspendisse luctus eget neque et dignissim. Mauris libero erat, tincidunt sed fermentum sit amet, porttitor eu nulla. Integer interdum consequat elementum. Ut dictum dignissim sollicitudin. In eu nisl vestibulum, commodo nisl non, fermentum tortor. Pellentesque mattis finibus leo, efficitur porta urna posuere nec.");
flowTextView.setText(html);
}
}
输出