パターン2 … 「android:layout_weight」を使用(1-4-3-5)しているのに、「android:layout_width」を"0dp"にしていない

個人的な調査

カテゴリー: layout_weight  閲覧数:677 配信日:2014-05-12 07:39




概要


・Button5が画面途中で千切れている

原因
・横方向で「android:layout_weight」を使用しているのに、「android:layout_width」を"0dp"にしていない


構成


・1つのLinearLayoutの中で配置

LinearLayout
 │ 
 ├LinearLayout
 │ └Button
 │ └Button
 │ └Button 
 │ 
 └LinearLayout

・最後のLinearLayoutでは、何も表示していない


コード


▼/res/layout/activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical"
   android:paddingBottom="@dimen/activity_vertical_margin"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   tools:context=".MainActivity">

   <LinearLayout
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:orientation="horizontal">
       <Button
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:layout_weight="1"
           android:text="1"/>
       <Button
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:layout_weight="4"
           android:text="4"/>
       <Button
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:layout_weight="3"
           android:text="3"/>
       <Button
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:layout_weight="3"
           android:text="5"/>        
   </LinearLayout>


</LinearLayout>



詳細


・法則性云々以前の問題として、画面表示が明らかにおかしい
・一応上記計算式に当てはめようと努力してみるも散々な結果に終わる…

週間人気ページランキング / 10-2 → 10-8
順位 ページタイトル抜粋 アクセス数
1 いくつかのプロジェクトは、ワークスペース・ディレクトリーにすでに存在するため、インポートできません | エラー 16
2 インポートされた ★★ は見つかりません | エラー 9
2 Eclipseが起動しない … ユーザ操作は待機中です | Eclipse(IDE) 9
3 Androidエミュレータで、PCキーボード入力を有効にしたい | エミュレータ(環境構築) 7
4 この行に複数マーカーがあります | エラー(エラー) 6
4 ○○は解決できないか、フィールドではありません | エラー(エラー) 6
5 エラー(エラー) カテゴリー 5
5 プラグイン "org.eclipse.ui.workbench" からのコードの起動で問題が発生しました | エラー(エラー) 5
6 「Android Studio 3.0.1」で、デザインプレビュー画面が表示されない。「waiting build for finish」が終わらない | Android Studio(IDE) 4
6 キーバインドの競合が発生しました。 通常のアクセラレーター操作を妨げる可能性があります。 | エラー(エラー) 4
6 public 型 ★★ はそれ独自のファイル内に定義されなければなりません | エラー 4
7 values-ja/strings.xmlに記載した内容が反映されない | 多言語化(環境構築) 3
7 ファイルのパスをコピーする方法と結果は、右クリックする場所で異なる | Android Studio(IDE) 3
7 文字列リテラルがダブル・クォートによって正しく閉じられていません | エラー(エラー) 3
7 エディターを開くことができません: 予期しない例外が起こりました。 | エラー(エラー) 3
7 Android Studio で、ソースコードが改行できない | Android Studio(IDE) 3
7 ★★ を型に解決できません | エラー(エラー) 3
8 Cannot resolve symbol 'AppCompatActivity' | Android Studio(IDE) 2
8 Outdated Kotlin Runtime | Kotlin(環境構築) 2
8 クラス(環境構築) カテゴリー 2
2025/10/9 1:01 更新
指定期間人気ページランキング / 2020-5-27 → 2025-10-8
順位 ページタイトル抜粋 アクセス数
1 インポートされた ★★ は見つかりません | エラー 23545
2 public 型 ★★ はそれ独自のファイル内に定義されなければなりません | エラー 10306
3 ○○は解決できないか、フィールドではありません | エラー(エラー) 7287
4 この行に複数マーカーがあります | エラー(エラー) 7171
5 いくつかのプロジェクトは、ワークスペース・ディレクトリーにすでに存在するため、インポートできません | エラー 7143
6 ★★ を型に解決できません | エラー(エラー) 6362
7 プラグイン "org.eclipse.ui.workbench" からのコードの起動で問題が発生しました | エラー(エラー) 5227
8 「Android Studio 3.0.1」で、デザインプレビュー画面が表示されない。「waiting build for finish」が終わらない | Android Studio(IDE) 4422
9 Androidエミュレータで、PCキーボード入力を有効にしたい | エミュレータ(環境構築) 3186
10 Android FAQ 3093
11 Eclipse で「パッケージ名」変更 | Eclipse(IDE) 2764
12 キーバインドの競合が発生しました。 通常のアクセラレーター操作を妨げる可能性があります。 | エラー(エラー) 2374
13 Eclipseが起動しない … ユーザ操作は待機中です | Eclipse(IDE) 2306
14 Eclipse で「プロジェクト名」「パッケージ名」を変更する方法 | Eclipse(IDE) 2245
15 Android Studio で、ソースコードが改行できない | Android Studio(IDE) 2038
16 内部エラーの表示中に内部エラーが発生しました | エラー 1845
17 このメソッドは型 ○○ の結果を戻す必要があります | エラー(エラー) 1778
18 インポートされた java.io は見つかりません | エラー(エラー) 1629
19 エラーが発生しました。ログ・ファイル ★★.log.を参照してください | エラー(エラー) 1419
20 インポートされたRは見つかりません | エラー(エラー) 1102
2025/10/9 1:01 更新