質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • Android

    7294questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • XML

    760questions

    XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

wrap_contentが上手く動作しない

解決済

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 924

n_kazuki

score 17

現状のレイアウト(赤枠)と作成したいレイアウト(グレー)が下記のイメージです。
wrap_contentを使っていますが、赤枠のようにはみ出てしまう原因がわかりません。
背景は気にしないでください(適当なスクショを利用したため)
![イメージ説明

アドバイスをいただけると助かります。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="10dp"
    android:paddingRight="10dp"
    android:paddingLeft="10dp">
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:background="#FFFFFF" >
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:layout_marginTop="3dp"
            android:layout_marginLeft="3dp"
            android:layout_marginRight="3dp" >
            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical">
                <TextView
            android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="hogehoge"
                    android:textSize="20sp"
                    android:textColor="#FFA500"
                    android:textStyle="bold"
                    android:layout_margin="3dp" />
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    android:layout_marginLeft="3dp"
                    android:layout_marginRight="3dp" >
                    <ImageView
                        android:layout_width="30dp"
                        android:layout_height="30dp"
                        android:src="@drawable/icon_hogehoge"
                        android:layout_margin="3dp" />
                    <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:layout_margin="3dp" >
                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:orientation="horizontal" >
                            <ImageView
                                android:layout_width="12dp"
                                android:layout_height="12dp"
                                android:src="@drawable/icon_hogehoge" />
                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="hogehoge"
                                android:textSize="12sp"
                                android:textColor="#000000"/>
                        </LinearLayout>
                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:orientation="horizontal" >
                            <ImageView
                                android:layout_width="12dp"
                                android:layout_height="12dp"
                                android:src="@drawable/icon_hogehoge" />
                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="hogehoge"
                                android:textSize="12sp"
                                android:textColor="#000000" />
                        </LinearLayout>
                    </LinearLayout>
                </LinearLayout>
            </LinearLayout>
            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical">
                <ImageView
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:src="@drawable/icon_hogehoge"
                    android:adjustViewBounds="true" />
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:orientation="horizontal"
                    android:layout_marginTop="3dp">
                    <ImageView
                        android:layout_width="15dp"
                        android:layout_height="15dp"
                        android:src="@drawable/icon_hogehoge" />
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:paddingLeft="3dp"
                        android:text="hogehoge"
                        android:textColor="#000000"/>
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>
</LinearLayout>
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

+1

どこのwrap_contentのことを言っているのか分からない上に、最終的にどのようなレイアウトにしたいのかも分かりません。
アドバイスはLinearLayoutに頼りすぎです、ViewGroupの入れ子は性能面や可読性が低下するのでRelaytiveLayoutなどの他のViewGroupを使用すべきだと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/03/16 23:23

    なるほど!LinearLayoutを最初に覚えたため、基本的にLinearLayoutで作成するパターンが多くなってしまっているので、RelativeLayoutを活用したレイアウト作りを心がけます。

    キャンセル

check解決した方法

0

<LinearLayout
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:layout_weight="1">
</LinearLayout

でやりたいレイアウトできました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

自分もそのレイアウトを試してみました。
イメージ説明
質問者さんの意図してるレイアウト通りかわかりませんが、xml通りに動いてます。

layout_weightを試しましたか?
もし試してなければお試しください。

リニアレイアウト (LinearLayout) の子の部品の配置 (重み付け)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/03/16 23:22

    オレンジ色のhogehogeを長い文字列にしてみてください。
    そうすると現象にはまるはずです。

    お時間ありましたら確認お願いします。。。

    キャンセル

同じタグがついた質問を見る

  • Android

    7294questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • XML

    760questions

    XMLは仕様の1つで、マークアップ言語群を構築するために使われています。