【问题标题】:Android Studio : Diamond LayoutAndroid Studio:钻石布局
【发布时间】:2020-07-01 05:04:16
【问题描述】:

我需要有关 Android Studio 布局的帮助。

我有文本和图标(每个 5 个),每个文本都与一个图标相关联。

图标和文本垂直居中。

我需要将每个文本和图标都放在一个“+”的形状中。所以一个在中心,顶部,底部,左侧和右侧。

如何将一个文本与其图标组合在一起,以便我可以将其解释为一个元素并更容易在此布局中居中?

谢谢!

你会发现我必须匹配的结果:

【问题讨论】:

    标签: android xml android-studio layout


    【解决方案1】:

    只需将它们都放在布局视图中。就像在具有垂直方向的线性布局中一样,并将重力设置为中心水平。如果你想让它可点击,只需在线性布局中添加一个 id。

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:id="@+id/image_text_element">
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/settings"
            android:layout_gravity="center_horizontal">
        </ImageView>
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="test"
            android:layout_gravity="center_horizontal" />
    </LinearLayout>
    

    【讨论】:

    • 很高兴能提供帮助 :) 如果您需要更多详细信息来正确设置答案,请告诉我
    【解决方案2】:

    如何将一个文本与其图标组合在一起,以便我可以将其解释为一个元素并更容易在此布局中居中?

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/your_text"
        android:background="?android:attr/selectableItemBackground"
        android:drawableTop="@drawable/your_icon"/>
    

    【讨论】:

    • 为什么?它看起来像您提供的图片
    • 将drawable添加到按钮非常有限,我可以更改drawable的大小
    • 可以通过drawablePadding设置padding,通过resources文件夹设置大小。否则,您可以从 xml 创建自定义视图。 stackoverflow.com/a/17413018/2754562 并在您的布局中使用它。
    • 可绘制的顶部为您提供了对缩放和放置的有限控制。您最好不要这样做并按照另一个答案中的描述创建线性布局。您会发现一些可行的情况,但总的来说这是个坏主意。
    • @GabeSechan OP询问“如何将一个文本与其图标分组”并提供图片示例。通过使用此代码,您将获得与图片描述完全相同的结果。另外我评论说他可以编写自定义视图以获得更好的控制。否决正确的投票有什么意义?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    • 2015-10-17
    • 2022-01-17
    • 1970-01-01
    • 2023-03-25
    相关资源
    最近更新 更多