スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

FrameLayoutを使ってレイアウトを重ねる方法(位置指定もOK)

LinearLayoutで画面のオブジェクトを配置していくと、オブジェクト同士を重ねることはできない。
Androidの画面レイアウトは、Wordの文章に図を貼り付けた時のように、オブジェクト同士が干渉しないよう自動調整される。
これはこれで便利なのだが、ちょっとレイアウトを工夫しようと思ったらなかなか上手くいかない場合がある。

そこで、ビューを重ねて配置するのがFrameLayout。このレイアウトは最もシンプルなレイアウトと言われており、中のオブジェクトをとにかく左上に配置する。例えば、タグ内に3つのオブジェクトがあれば、3つとも左上に重ねて表示される。他のレイアウトとは異なり、位置を指定することもできない。それ故に、何のためのレイアウトか良く分からないという意見も。

私も当初、「使えないヤツ」と思っていたけど、そうでもないことが判明。FrameLayout内にLinearLayoutを配置すれば、その中のオブジェクトWidgitはちゃんと位置指定できる。

例えばこんな感じ。


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

    <FrameLayout android:layout_width="fill_parent"
      android:id="@+id/frameLayout1"
      android:layout_height="wrap_content">
        <LinearLayout android:layout_width="fill_parent"
          android:id="@+id/linearLayout1"
          android:layout_height="fill_parent"
          android:orientation="vertical">
            <Button android:layout_width="fill_parent"
              android:id="@+id/button1"
              android:text="Button"
              android:layout_height="wrap_content">
            </Button>
            <Button android:layout_width="fill_parent"
              android:id="@+id/button2"
              android:text="Button"
              android:layout_height="wrap_content">
            </Button>
            <Button android:layout_width="fill_parent"
              android:id="@+id/button3"
              android:text="Button"
              android:layout_height="wrap_content">
            </Button>
        </LinearLayout>
        <LinearLayout android:layout_width="fill_parent"
          android:id="@+id/linearLayout2"
          android:layout_height="fill_parent"
          android:orientation="vertical">
            <TextView android:text="TextView"
              android:id="@+id/textView1"
              android:layout_marginLeft="100dp"
              android:layout_marginTop="70dp"
              android:textSize="30sp"
              android:textColor="#FFFF0000"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content">
            </TextView>
        </LinearLayout>
    </FrameLayout>

</LinearLayout>



これで、下のようにボタンとテキストを重ねて表示できる。
flamelayout.jpg

スポンサーサイト

comment

管理者にだけ表示を許可する

Androidアプリ紹介
リリース中のアプリはまだありません。
iPhoneアプリ紹介
タイピング革命
フリック入力はタイピング革命で練習しよう!ネットランキングがウリのタイピングアプリ

icon-l-typing.jpg

初心者も安心のトレーニングモード搭載!リプレイ機能でオンラインランキング上の達人のプレイを見てみよう!



簡単3Dカメラ
iPhoneで手軽に3D写真を楽しもう!平行法/交差法/アナグリフ/グラグラ3Dに対応。
icon-l-3d.jpg

2枚の写真を撮影するだけで、裸眼で立体視できる3D写真が作成できます。平行法、交差法、アナグリフ、グラグラ3Dと多彩なモードを搭載。85円でこの機能を体感できるのは簡単3Dカメラだけ!

プロフィール

あらきんぐ★

Author:あらきんぐ★
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
アクセスカウンター
アクセスランキング
[ジャンルランキング]
携帯電話・PHS
310位
アクセスランキングを見る>>

[サブジャンルランキング]
Android(Google)
77位
アクセスランキングを見る>>
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。