1
私は他のビューの単純な組み合わせであるカスタムViewGroup
を書いています。しかし、ビューは任意の順序であるように見えます。Android - カスタムビューグループの子オーダー
私はgetChildDrawingOrder()
メソッドを実装できますが、ビューの順序が最初にどのように決定されたのか不思議でした。
UPDATE:これは最小の実装であり、それは動作しますが、インジケータは関係なく、私は私は私はありません
public class PaginatedGallery extends ViewGroup {
ViewPager mPager;
CirclePageIndicator mPagerIndicator;
public PaginatedGallery(Context context) {
super(context);
mPager = new ViewPager(context);
mPagerIndicator = new CirclePageIndicator(context);
addView(mPager);
addView(mPagerIndicator);
}
public void setAdapter(PaginatedGalleryAdapter adapter) {
mPager.setAdapter(adapter);
mPagerIndicator.setViewPager(mPager);
}
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
final int count = getChildCount();
for (int i = 0; i< count; i++) {
getChildAt(i).layout(l, t, r, b);
}
}
}
知っているものを上に常にではありませんなぜ私にはわかりませんonMeasure()
とonLayout()
を実装するのは簡単なバニラですが、私はなぜインジケータがページャではなく最初の子であるのか不思議です。
ここにコードを入れて....私はあなたが望むものを正確に推測することができます... !!! –