是否可以在 Android.. 中创建这样的布局?

Is it possible to create a layout like this in Android..?

我想设计一个像传统博客一样的XML资源布局,如下图所示。它应该在右侧包含一个图像,其余区域(结合图像的左侧区域和图像下方的整个区域)应该用文本填充。

有什么想法吗?

您正在寻找FlowTextView

这是一个片段

<uk.co.deanwild.flowtextview.FlowTextView
    android:id="@+id/ftv"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:padding="10dip"
            android:src="@drawable/android"/>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginTop="400dip"
            android:padding="10dip"
            android:src="@drawable/android2"/>
</uk.co.deanwild.flowtextview.FlowTextView>

在代码中

FlowTextView flowTextView = (FlowTextView) findViewById(R.id.ftv);
Spanned html = Html.fromHtml("<html>Your html goes here....");
flowTextView.setText(html);

将 jitpack 添加到您的 build.gradle 存储库末尾:

repositories {
        // ...
        maven { url "https://jitpack.io" }
    }

添加依赖:

compile 'com.github.deano2390:FlowTextView:2.0.5'

然后您将需要复习创建自定义视图。

单个 TextView 将无法为您完成此操作,因为它的可用 space 是矩形的。

您可以创建一个自定义视图,它知道如何设置每行文本的可变宽度以及在您需要的位置绘制图像视图。

我建议从 android.widget.TextView 开始绘制文本并根据您的需要对其进行修改。

或者,你可以找一个别人已经写好的组件化的自定义View,你可以使用。