1

我正在使用一个片段,其中我的布局由顶部(标题)上的文本和其下方的图像以及其下方的另一块文本组成。我想让它使图像向左移动,包括标题在内的文本和其余的向右移动,一旦图像边界超过它就从左侧开始,更像是在网页上环绕(对不起对于我糟糕的解释,希望我能说得好)。任何线索如何重新排列我现有的代码或进行更改以达到目的?

谢谢!这是我的代码(autoresizeimage 是图像代码):

 <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:foo="http://schemas.android.com/apk/res/com.cookie.halloween"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/login_background_gradient" >

        <ScrollView
            android:id="@+id/news_details_container"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" 
                android:padding="6dp ">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@drawable/background_article_body"
                    android:orientation="vertical"
                    android:paddingLeft="10dp"
                    android:paddingTop="@dimen/common_top_padding"
                    android:paddingRight="10dp"
                    android:paddingBottom="10dp" >

                    <com.cookie.halloween.utils.FontTextView
                        android:id="@+id/news_headline"
                        foo:customFont="Cabin-Medium.ttf"
                        android:textSize="18sp"
                        android:textColor="@color/article_headline"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content" />

                    <com.cookie.halloween.utils.FontTextView
                        android:id="@+id/news_timestamp_and_source"
                        foo:customFont="Roboto-Regular.ttf"
                        android:textSize="11sp"
                        android:textColor="@color/article_source"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content" />

                    <com.cookie.halloween.views.AutoResizeImageView
                        android:id="@+id/news_image"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_horizontal"
                        android:layout_marginTop="@dimen/common_top_padding"
                        android:layout_marginBottom="@dimen/common_bottom_padding" />

                    <com.cookie.halloween.views.LinkableTextView
                        android:id="@+id/news_body"
                        foo:customFont="Roboto-Regular.ttf"
                        android:textSize="13sp"
                        android:lineSpacingExtra="3dp"
                        android:textColor="@color/article_body"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content" />
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/related_container"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="9dp"
                    android:background="@drawable/background_article_body"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/related_articles"
                        style="@style/related_buttons"
                        android:layout_width="match_parent"
                        android:layout_height="50dp"
                        android:contentDescription="@string/content_description_related_articles"
                        android:text="@string/content_description_related_articles" />

                    <View
                        android:id="@+id/related_divider"
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/related_divider"
                        android:layout_marginLeft="1dp"
                        android:layout_marginRight="1dp"
                        android:visibility="gone" />

                    <TextView
                        android:id="@+id/related_quotes"
                        style="@style/related_buttons"
                        android:layout_width="match_parent"
                        android:layout_height="50dp"
                        android:contentDescription="@string/content_description_related_quotes"
                        android:text="@string/content_description_related_quotes" />
                </LinearLayout>
            </LinearLayout>
        </ScrollView>

        <include layout="@layout/loading_no_results" />

    </FrameLayout>
4

6 回答 6

2

在此处输入图像描述@justice 我明白你需要这个并试试这个

flowtextview

它是一个用于正确对齐图像和文本视图的 jar 文件,从这里下载 flowtextview

FlowTextView textviewname = new com.pagesuite.flowtext.FlowTextView(
            context);

尝试使用这个

于 2013-11-13T08:38:59.183 回答
1

它不太清楚你想要什么,因为由于你使用的一些外部布局以及尺寸和字符串,我无法在我这边测试它......

但我仍在尝试猜测您实际上想问什么。

就像一张图片,右边有两个文本视图,就像这张图片一样......

在此处输入图像描述

这是此布局安排的来源...

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- This is your news item -->
<LinearLayout
    android:id="@+id/news_item_container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >
    <ImageView
        android:id="@+id/news_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/image_description"
        android:src="@drawable/ic_launcher" />
    <LinearLayout
        android:id="@+id/news_text_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >
        <TextView
            android:id="@+id/news_headline"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/your_headline_"
            android:textAppearance="?android:attr/textAppearanceLarge" />
        <TextView
            android:id="@+id/news_timestamp_and_source"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/your_text_here_"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>
</LinearLayout>
<!-- Here you can put your other stuff -->
</LinearLayout>

希望这对您有所帮助... :)

于 2013-11-12T08:05:54.813 回答
1

由于 api 8 (Android 2.2) 有一个新接口LeadingMarginSpan2

参考

如何围绕 ImageView 对齐 TextView?

如何在其左侧和下方进行图像和文本的布局?

示例源代码在这里

于 2013-11-13T16:07:07.980 回答
0

use below property in textview for set image left side of textview.

android:drawableLeft="@drawable/YOURIMAGE"
于 2013-11-01T04:14:13.773 回答
0

由于 api 8 (Android 2.2) 有一个新接口LeadingMarginSpan2,它允许您为前 N 行创建文本缩进。在由前 3 行 50 像素的缩进创建的图像中。

查看如何在文本图片周围环绕文本

于 2013-11-12T13:17:09.303 回答
0

使用 RelativeLayout 处理您的 LinearLayouts,如果需要,替换所有线性布局,并用于 textviews。

于 2013-11-07T18:31:02.310 回答