私は、Androidについての本を読んでいると私はここで、ここでのLinearLayoutとレイアウトを使用して奇妙な行動:重量
こだわっているの命令は、次のとおりです。
- は、我々が最近作成した実際のUIプロジェクトを使用しますが、してみましょうレイアウトの完全な クリーンシートから始めてください。プロジェクト エクスプローラでレイアウトフォルダを右クリックします。ポップアップコンテキスト依存のオプションメニューから、[新規|新規作成]を選択します。 レイアウトリソースファイル。
- Root要素にLinearLayoutが選択されていることを確認してください。
- ファイルにlist_detail_layoutという名前を付け、次に[OK]を左クリックします。
- [プロパティ]ウィンドウで、デフォルトで提供されている LinearLayoutのorientationプロパティを見つけてhorizontalに変更します。
- LinearLayout(垂直)をデザインにドラッグします。体重性、及び の色に設定40に、その背景を、それを設定:
- すぐ
- がルートのLinearLayout内の最初の(垂直)のLinearLayoutを選択し、設計上(水平)のLinearLayoutをドラッグし、 そのレイアウトを見つけますバックグラウンドプロパティの楕円を見つけて左クリックすると、 が表示され、次に[カラー]タブを左クリックして色を選択します。
- ルートLinearLayout内の2番目の(水平)LinearLayoutを選択し、 レイアウト:weightプロパティを見つけて60に設定します。ここでは、2つの が明確に識別可能な領域を1つは40%、もう1つは60 %、 次に示すように:
Screen Shot は、私はすべての手順に従ってください、私はまだ画像の結果を得ることはありません。これは私のXMLコードです:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="40"
android:background="@android:color/holo_orange_light"></LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="60"></LinearLayout>
</LinearLayout>
私は「wrap_content」にlayout_widthの両方の値を変更した場合、それは動作しますが、本の中で言及されていない理由を私は知らない...
をlayout_weightあなたはアンドロイドを持っているのいずれかを確認してくださいを重量合計を割り当てる必要があります。加重合計= 1の場合、その40%は親レイアウトのweight_sumを与えていない –
です –