【问题标题】:Layout: Text-View should scale automatically布局:文本视图应自动缩放
【发布时间】:2023-03-30 08:17:01
【问题描述】:

我创建了一个布局,它在顶部有一个 imageview,在中间的文本中,最后有一个按钮。现在我希望所有这些元素都在一页上,这意味着 textview 应该自动缩放他的大小。实际上,在我的布局中,我只能看到 imageview 和 textview,以查看我必须滚动的按钮。

我应该自己更改textview的大小并为不同的屏幕尺寸添加不同的布局还是有另一种可能性?

我的 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

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

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

        <HorizontalScrollView
            android:id="@+id/horizontalScrollView1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal" >

            <RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:orientation="horizontal" >

                <RelativeLayout
                    android:id="@+id/l1"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="horizontal" >

                    <ImageView
                        android:id="@+id/imageView2"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:scaleType="centerInside"
                        android:src="@drawable/crunch1" />

                    <ImageView
                        android:id="@+id/button2links"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/imageView2"
                        android:layout_centerHorizontal="true"
                        android:scaleType="centerInside"
                        android:src="@drawable/links2" />
                </RelativeLayout>

                <RelativeLayout
                    android:id="@+id/b2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_toRightOf="@+id/l1"
                    android:orientation="horizontal" >

                    <ImageView
                        android:id="@+id/imageView1"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:src="@drawable/crunch2" />

                    <ImageView
                        android:id="@+id/button2rechts"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/imageView1"
                        android:layout_centerHorizontal="true"
                        android:adjustViewBounds="true"
                        android:src="@drawable/rechts2" />
                </RelativeLayout>
            </RelativeLayout>
        </HorizontalScrollView>

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Crunch"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/crunch" />

        <ImageButton
            android:id="@+id/pause"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:onClick="verlaufKlick"
            android:src="@drawable/ic_launcher"
            android:visibility="invisible"
            android:background="?android:selectableItemBackground" 
            />
    </LinearLayout>
</ScrollView>

【问题讨论】:

  • 你使用了多少种布局?!
  • 15 个都具有相同的元素。
  • 您只需要1,即可重现给定的图像...
  • 我认为您应该为此使用权重.. 制作三个线性布局.. 一个用于 imageview,一个用于所有 textview,最后一个用于按钮.. 并根据您的要求提供高度 0dp 和重量。跨度>
  • 你的设计是一个膨胀软件。我的很轻。 1 imageView 与顶部对齐。 1 个按钮与底部对齐。 1 个滚动视图匹配其间的剩余空间。然后你将TextViews附加在另一个下面......完成!所有这些无用的并发症都消失了。如果您使用 ListView 而不是 ScrollView 会更好。

标签: android xml layout textview


【解决方案1】:

现在我用这个:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="bottom"
    android:orientation="vertical" >

            <HorizontalScrollView
                android:id="@+id/horizontalScrollView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:orientation="horizontal" >



                    <RelativeLayout
                        android:id="@+id/l1"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:orientation="horizontal" >

                        <ImageView
                            android:id="@+id/imageView2"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:scaleType="centerInside"
                            android:src="@drawable/crunch1" />

                        <ImageView
                            android:id="@+id/button2links"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_below="@+id/imageView2"
                            android:layout_centerHorizontal="true"
                            android:scaleType="centerInside"
                            android:src="@drawable/links2" />


                        <ImageView
                            android:id="@+id/imageView1"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:src="@drawable/crunch2" />

                        <ImageView
                            android:id="@+id/button2rechts"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_below="@+id/imageView1"
                            android:layout_centerHorizontal="true"                            
                            android:src="@drawable/rechts2" />
                    </RelativeLayout>

            </HorizontalScrollView>

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:text="Crunch"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_below="@+id/horizontalScrollView1" />

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:text="@string/crunch" 
                android:layout_below="@+id/textView2"
                android:layout_above="@+id/pause"
                android:adjustViewBounds="true"
                android:scaleType="centerCrop"/>

            <ImageButton
                android:id="@+id/pause"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"                
                android:onClick="verlaufKlick"
                android:src="@drawable/ic_launcher"
                android:visibility="invisible"
                android:background="?android:selectableItemBackground"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"

                />


</RelativeLayout>

【讨论】:

    猜你喜欢
    • 2015-06-16
    • 1970-01-01
    • 1970-01-01
    • 2014-11-27
    • 1970-01-01
    • 2013-09-01
    • 2010-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多