私は、ファイル内のlayers.xml層-リストを持っている:アンドロイド:どのようにレイヤーリスト内GradientDrawableのサイズを変更するには、プログラム
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/outer_rect">
<shape android:shape="rectangle">
<stroke
android:width="3dp"
android:color="@color/gray4"/>
<solid android:color="@color/white"/>
</shape>
</item>
<item android:top="10dp" android:bottom="10dp" android:left="10dp" android:right="10dp"
android:drawable="@drawable/dot_pattern_bitmap"/>
</layer-list>
これは、カスタマイズでframeLayout customView.xmlで使用されます。
<merge xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/layers"/>
</merge>
それ自体が使用されます。 in
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/space_m"
android:orientation="vertical">
<my.namespace.customView
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</FrameLayout>
さらに、私はcustomView(特にレイヤー)の動作を編集するためにCustomView.javaクラスを持っています。
そこには、customViewのサイズとパラメータ 'ratio'に応じてレイヤリストのサイズを更新しようとしています。私は次のように試しました:
だから、それはたくさんのコードでした...残念ながら、これは正しく動作しません。フレームレイアウトが最初にロードされた場合、非常に小さな矩形しか見ることができません。
私は前後に、このビューに切り替える場合のみ、私が望んでいたとして、サイズが適用されます。
誰もがアイデアを持っていますか?
イメージビューを幅のmatch_parentに設定します。 –
ImageView自体の幅はmatch_parentです。含まれているビューではありませんが、幅と高さ、幅のみ、またはnone(投稿されたもの)の両方についてmatch_parentを試しました。これは変更されません。 – Caro
FrameLayoutでは、wrap_contentです。 –