2

私は最初のアプリをやろうとしています。

4行を含むレイアウトを行っています。最初の行 (高さ 10%) にタイトル、2 番目の行 (高さ 40%) に 2 つの画像、3 番目の行 (高さ 40%) に 2 つの画像、4 番目 (高さ 10%) にボタンがあります。

現在、縦方向の線形レイアウトを使用しています。重みの合計と重みを使用して、各行の正しい比率を取得します。

しかし、2 番目と 3 番目の行で線形レイアウトの重みを使用すると、ネストされた重みとパフォーマンスの低下に関する警告が表示されます。パフォーマンスの低下の問題は理解していますが、それらなしで問題を解決する方法がわかりません。

各画像を親の幅の 50% にする必要があります。

ご協力いただきありがとうございます。

編集:それは私が達成しようとしていることの簡単なモックアップです https://dl.dropbox.com/u/252856/androidlayout.jpg

4

2 に答える 2

2

特定の状況ImageViewsでは、次のようなブロックで重みを使用せずに、2 つが親の幅の 50% を占めるようにすることができます。

<RelativeLayout android:layout_width="match_parent" android:layout_height="0dp" 
     android:layout_weight="your_value">
     <View android:id="@+id/anchor" android:layout_width="0dp" 
           android:layout_height="match_parent" android:layout_centerHorizontal="true"/>
     <ImageView android:layout_width="wrap_content" 
           android:layout_height="match_parent" android:layout_alignParentLeft="true"
           android:layout_alignRight="@id/anchor" /> 
     <ImageView android:layout_width="wrap_content" 
           android:layout_height="match_parent" android:layout_alignParentRight="true"
           android:layout_alignLeft="@id/anchor" />
</RelativeLayout>
于 2012-12-20T15:29:25.513 に答える
0

レイアウトをGridLayoutとして機能させることができるかどうかを見て検討することをお勧めします。これは、UI 要素を大まかにグリッド状のパターンに配置したい状況を処理する一方で、ネストされた重みが引き起こす可能性のあるパフォーマンスの問題を回避するように設計されています。UI がこの種のレイアウトに適している場合、それを利用することで、実装の簡素化とパフォーマンスの高速化の両方を実現できます。

GridLayout は API レベル 7 までさかのぼってサポート ライブラリを介してサポートされていると思います。

于 2012-12-20T15:27:47.620 に答える