[英]How to position a view vertically between two other views in android?
我正在为我的应用程序使用相对布局。 我想将一个视图放置在其他两个视图之间。 我没有任何嵌套,我想知道如果没有该嵌套是否可以实现。
我的XML代码很长而且很乱,所以我只发布相关部分。 如果您需要更多,请告诉我:
<Spinner
android:id="@+id/maze_algorithm_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/random_textview"
android:layout_marginTop="40dp"
android:layout_alignEnd="@+id/play"
android:entries="@array/maze_generation_array"/>
<TextView
android:id="@+id/maze_algorithm_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/maze_algorithm_spinner"
android:layout_alignStart="@+id/help"
android:padding="2dp"
android:text="@string/maze_algorithm_spinner_text"
android:background="@android:color/holo_green_light"/>
我基本上是将Choose algorithm
文本视图及其微调框垂直放置在“ Random Generation
文本视图和“ Driver
文本视图之间。
这是我的应用程序屏幕当前的外观:
如果您将RelativeLayout用作父级,请尝试以下操作:
<RelativeLayout ...>
<LinearLayout
android:id="@+id/random_generation_layout"... (responsible for randomGeneration)
android:alignParentTop="true" >
<TextView ... />
<etc>
</LinearLayout>
<LinearLayout
android:id="@+id/choose_algo_layout"... (responsible for ChooseAlgorithm)
android:layout_above="@+id/driver_layout"
android:layout_below="@+id/random_generation_layout" >
<TextView ... />
<etc>
</LinearLayout>
<LinearLayout
android:id="@+id/driver_layout"... (responsible for driver)
android:alignParentBottom="true">
<TextView ... />
<etc>
</LinearLayout>
</RelativeLayout>
希望它能对您有所帮助!
如果您真的不想嵌套,那么您可能想要尝试在两者之间添加两个透明View
,而这两个View
元素的高度相同。 所以会像
<RandomGeneration />
<View />
<ChooseAlgorithm />
<View />
<Drive />
另一方面,在不使用额外的View
的情况下,当前将维度设置为wrap_content
,您还可以将填充分配给<ChooseAlgorithm />
,以使顶部填充与底部填充相同。 保证金也是如此。 您可以使用padding或margin,或同时使用两者。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.