java - 如何使用线性布局?

标签 java android xml android-layout

您好,我正在尝试了解如何使用 LinearLayouts。我将一个水平布局拖到 XML 文件中,然后将三个 TextView 拖到一起。当我尝试拖动 ImageView 并将其放置在它们下方时,它总是将 TextView 推到一边。我该如何解决这个问题?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="397dp"></LinearLayout>

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/imageView"
    android:layout_gravity="center_vertical" />

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="70dp"
    android:weightSum="1">

    <TextView
        android:layout_width="110dp"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Movie Name"
        android:id="@+id/textView"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="30dp"
        />

    <TextView
        android:layout_width="110dp"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Actor Name"
        android:id="@+id/textView2"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="30dp" />

    <TextView
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Grade"
        android:id="@+id/textView3"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="30dp" />

</LinearLayout>

</LinearLayout>

最佳答案

  1. 您没有提到主要父级LinearLayoutorientation,因此默认情况下它认为它是水平的并在同一行中显示图像和 TextView 。

  2. 以下 LinearLayout 没有任何用处,因为它没有任何子级。

  3. 您需要将 LinearLayout 的方向声明为 vertical 才能在其他布局下方显示图像。

一些伪代码就像这样,

<LinearLayout
    orientation="vertical"
    ...>
          <LinearLayout
                  orientation="horizontal"
                  ...>
                      <TextViews ... />
           </LinearLayout>
           <ImageView ... />
</LinearLayout>

关于java - 如何使用线性布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36590924/

相关文章:

java - 使用尝试但仍然有异常

java - 在 Spark 中访问 Cassandra 节点

java - 如何使 Google Drive Java SDK 读取/写入 "my Drive"而不是其他地方?

android - 我可以在谷歌地图中拥有最大数量的叠加层吗?

java - 使用 WifiManager 连接到无线网络 (wpa2)

ios - 将 XML 写入项目(iOS、Xcode 4)

xml - 使用 Wix 安装程序创建注册表项

android - 2x3 自定义按钮网格布局不适合 TableRow

java - 什么是 hibernate 中的二级缓存?

服务器上的 Android Studio Gradle