2

最終的にはこのようになるビューの複雑な配置が必要です

 ______________
 | upper limit|
 ==============
      ____
      |  |
      |  | ___________
      |  | |Integrand|
      |  | ===========
      ====
    ________
    | low  |
    ========

もちろん、私は明白なことを試しました。互いに下にある 3 つのビュー、layout_centerHorizo​​ntal は、レイアウト全体に関して、それらを適切に中央に配置します。

Integrand を含むビューを、長い垂直ビューの右側に移動させたいと考えています。ただし、他のビューが中央に配置されているため、これを実現することはできません。

別のレイアウトで下にある 3 つのビューを中央揃えにすると、上限ビューと下限ビューが大きくなると、4 つ目のビューが長い垂直ビューから離れすぎてしまいます。

それを達成するための簡単なトリックがあると思います。あなたの助けに感謝します。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.example.nestviews.InputView
android:id="@+id/sum_upperlimit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="10" />
<com.example.nestviews.LabelView
android:id="@+id/sum_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="-10dp"
android:layout_below="@id/sum_upperlimit"
android:layout_centerHorizontal="true"
android:textSize="40dp"
android:text="\u2211" />
<com.example.nestviews.InputView
android:id="@+id/sum_function"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/sum_label"
android:layout_toRightOf="@id/sum_label"
android:layout_centerHorizontal="false"
android:text="n^2+1" />
<com.example.nestviews.InputView
android:id="@+id/sum_lowerlimit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@id/sum_label"
android:text="n=1" />
</RelativeLayout>
4

1 に答える 1

1

相対レイアウト内の相対レイアウトとこのアンカーのアンカーを使用しました。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <View
        android:id="@+id/sum_upperlimit"
        android:layout_width="200dp"
        android:layout_height="50dp"
        android:layout_centerHorizontal="true"
        android:background="@android:color/holo_purple" />

    <View
        android:id="@+id/View01"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_centerHorizontal="true"
        android:background="@android:color/holo_blue_dark" />

    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/relativeLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/View01"
        android:layout_below="@+id/sum_upperlimit" >

        <View
            android:id="@+id/sum_label"
            android:layout_width="200dp"
            android:layout_height="50dp"
            android:layout_centerVertical="true"
            android:background="@android:color/holo_blue_light" />

        <View
            android:id="@+id/sum_function"
            android:layout_width="50dp"
            android:layout_height="300dp"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:background="@android:color/holo_orange_light" />

        <View
            android:id="@+id/anchor"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:background="@android:color/holo_blue_dark" />
    </RelativeLayout>
     <View
        android:id="@+id/sum_lowerlimit"
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:layout_below="@+id/relativeLayout1"
        android:layout_centerHorizontal="true"
        android:background="@android:color/black" />
</RelativeLayout>

ここに画像の説明を入力してください

于 2013-02-22T20:29:02.207 に答える