0
私はカスタムビューグループを作成しています。親の幅と高さに基づく子ビューのサイズ変更
<com...Template
android:id="@+id/template"
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_weight=".5" />
実行時に動的にレイアウトに追加します。
Template.java
currentTemplateView = LayoutInflater.from(context).inflate(R.layout.template_one, this, false);
addView(currentTemplateView, 0);
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
Log.e("Onla", "" + l + t);
int row, col, left, top;
for (int i = 0; i < getChildCount(); i++) {
View child = getChildAt(i);
child.layout(0, 0, getMeasuredWidth(), getMeasuredHeight());
}
// addView(currentTemplateView, 0);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int mode = MeasureSpec.getMode(widthMeasureSpec); // mode == View.MesaureSpec.EXACTLY
int size = MeasureSpec.getSize(widthMeasureSpec); // size == 400
Log.e("onmeasure", "Width: " + mode + "," + size);
for (int i = 0; i < getChildCount(); i++) {
measureChildWithMargins(getChildAt(i), widthMeasureSpec, 0, heightMeasureSpec, 0);
// getChildAt(i).measure(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.getSize(heightMeasureSpec));
}
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
289 DP(テンプレート)の高さと通常のレイアウト。よく表示されます。
私はリストまたはグリッドビューで使用しました。ビューグループの子が折りたたまれています。親ビューグループ(template.java)に適合する必要があります。私は私が何でもリサイズ最初のイメージのように見えるとしてのViewGroupたい
..私は私のコードや、このための任意のアイデアに変更する必要があるものを私にしてみましょう。..事前に
感謝。