web-dev-qa-db-ja.com

Android高さをパーセンテージとしてレイアウトを配置

私はAndroid=に慣れていません。練習しています。背景画像とスライドメニュー付きのフローティングコンテナを含む画面をデザインしようとしています。(詳しくは、添付の画像をご覧ください)

私のレイアウトは、背景画像、下部に浮かぶが下部にいくらかのマージンがあるいくつかのアイコンを持つコンテナで構成されています(添付の写真を参照)

私の知る限りでは、これは下部に「相対レイアウト」を配置して画像を配置することで実現できます。それが正しいか ?

また、フローティングdivの背景として、透明な繰り返し画像を追加したいと思います。

良いアドバイスをするか、良いチュートリアルを教えてください

前もって感謝します

enter image description here

14
ramesh

LinearLayoutを使用して、xmllayout_weight を%として設定できます

繰り返し背景については tileMode を使用できます

例:weightSumが100に設定されていることに注意してください。これは、総重量が100になることを示します。 layout_weight=10があると、10%のスペースが割り当てられます。

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:orientation="vertical"
    Android:layout_gravity="bottom"
    Android:weightSum="100">
    <LinearLayout
        Android:layout_width="fill_parent"
        Android:layout_height="0dp"
        Android:layout_weight="10"
        Android:background="@drawable/bg"
        Android:orientation="horizontal"
        Android:tileMode="repeat" >
    </LinearLayout>
    <View 
        Android:layout_width="fill_parent"
        Android:layout_height="0dp"
        Android:layout_weight="5" />
</LinearLayout>
33
NcJie

新しいパーセントサポートライブラリでこれを実現できます: https://developer.Android.com/tools/support-library/features.html#percent

このようなことをすることによって:

<Android.support.percent.PercentRelativeLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent">

    <View
        Android:layout_width="0dp"
        Android:layout_height="0dp"
        Android:layout_alignParentBottom="true"
        app:layout_heightPercent="11%"
        app:layout_widthPercent="100%" />

</Android.support.percent.PercentRelativeLayout>
4
dor506

高さをパーセンテージで分割する場合は、水平方向の線形レイアウトが必要で、各アイテムにlayout_weightを追加します。

線形レイアウトガイド

<view Android:layout_width="wrap_content"
      class="net.zel.percentage.PercentageButton"
      Android:id="@+id/button"
      Android:layout_height="wrap_content"

      customView:percentage_width="50"
      customView:percentage_height="50"

      />

ライブラリに目的の属性を追加できます
https://github.com/metrolog3005/percentage_view

0
Aleksey Makarov

あなたの要件のために、レイアウトは大丈夫です。リニアレイアウトでもこれを実現できます。私があなたの要件を正しく理解しているなら、この議論をチェックしてください。

作り方Androidアプリの背景画像を繰り返す

0
Amrit