0

他のランダムなものが含まれるアンドロイドレイアウトがあり、中央のセクションには、次の XML コードのような 4 つの RelativeLayouts を含む linearLayout があります。

<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="left|center_vertical"
        android:background="@drawable/backgroudpng">

    </RelativeLayout>
</LinearLayout>

そうは言っても、この相対レイアウトにオブジェクトを配置しようとすると、これは下り坂になります。その中にオブジェクトを配置するたびに、オブジェクトをレイアウトの別のセクションに配置します (ドラッグ先ではありません!)。たとえば、相対レイアウトの右上隅にテキストボックスをドロップすると、右下または中央に配置される可能性があります...

これを機能させる必要があるか、別のアプローチが必要です。私の目標は、3 つまたは 4 つの異なるテキスト オブジェクトを同時に表示できるカスタム ボタンを作成することです。

私がやろうとしていること (あなたも私を必要とするなら、私は gimp でそれを描くことができます)

______________________________________________________________________________________
|                                                                                     |
|  Some information here                                                              |
|                                               picture of a number from 1-10 here    |
|  Something else about the "button here"                                             |
|                                                                                     |
|_____________________________________________________________________________________|

とにかく、これを実行するためにサーフェス ビューを使用することを考えていましたが、それはやり過ぎのように思えました。基本的に、クリックして設定できる設定の一部を表示する、これらの大きなクリック可能なインターフェイスを 4 つ作成したいだけです。とにかく、これが間違った方法である場合は、私に知らせてください! それを行うのは簡単な方法のように思えますが、それが私が望んでいることです!

アップデート:

ここに私が達成しようとしていることの簡単な写真があります:

ここに画像の説明を入力

明るい茶色は背景画像を表し、黒はビュー全体の背景を表し、テキストは単なるサンプル テキストです。このビューをボタンのようにクリックして、これらの設定の背後にある設定を変更できるようにしたいと考えています。私が抱えている問題は、「タイプ」設定が必要な場所に小さなテキストオブジェクトをドラッグし、放すと「影響を受ける行」があるはずの場所に配置されることです。

今夜、以下に提案されている方法を試して、問題が解決するかどうかを確認します.

今までお世話になりました!

更新 2:

これがコードと、それが生成するものの写真です(私の電話だけでなく、別の電話とエミュレーターでもこのように見えることを確認しました)

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/buttonbackground">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Small Text"
        android:id="@+id/textView"
        android:textColor="#debabc"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="20dp"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Small Text"
        android:id="@+id/textView2"
        android:layout_marginRight="21dp"
        android:textColor="#dec1db"
        android:layout_below="@+id/textView3"
        android:layout_alignParentRight="true"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Small Text"
        android:id="@+id/textView3"
        android:textColor="#debabd"
        android:layout_alignBaseline="@+id/textView"
        android:layout_alignBottom="@+id/textView"
        android:layout_toLeftOf="@+id/textView2"/>
</RelativeLayout>

ここに画像の説明を入力

青いボックスは、おおまかにテキストを配置した場所ですが、わかりやすくするために、X アクセスと Y アクセスの両方で再配置されています。

また、これはAndroid Studioを使用していますが、Eclipseでレイアウトを確認してロードしたところ、同じことをしています。私は以前にそれらを使用していて、この問題を抱えていなかったので、それは奇妙です.私は何か間違ったことをしているに違いありません.

追加情報: API14、16、および 18 でレンダリングしてみました。

再度、感謝します!

4

2 に答える 2

1

使用したリニア レイアウトの代わりに、ルート レイアウトとして相対レイアウトを使用します。他のレイアウトを簡単に管理できるようになります。

于 2013-10-15T03:33:58.377 に答える
0

RelativeLayout を使用しないでください。あなたの要件に従って。2 行のテーブル レイアウトでは、はるかに優れた結果が得られます。使い方も簡単です。さまざまな画面サイズでレイアウトが乱れることはありません。

于 2013-10-15T04:03:43.740 に答える