类android.support.v7.widget.ViewStubCompat源码实例Demo

下面列出了怎么用android.support.v7.widget.ViewStubCompat的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: EasyIntro   文件: EasyIntroCarouselFragment.java
private void addIndicator() {
    if (mIndicatorRes != -1) {
        ViewStubCompat viewStub = (ViewStubCompat) mIndicatorsContainer.findViewById(R.id.pageIndicator);
        viewStub.setLayoutResource(mIndicatorRes);
        viewStub.setOnInflateListener(new ViewStubCompat.OnInflateListener() {
            @Override
            public void onInflate(ViewStubCompat stub, View inflated) {
                setViewPagerToPageIndicator();
            }
        });
        View view = viewStub.inflate();
        view.setVisibility(mPageIndicatorVisibility ? View.VISIBLE : View.GONE);
    }
}
 
源代码2 项目: EasyIntro   文件: EasyIntroCarouselFragment.java
private void inflateIndicatorContainer(final View view) {
    final ViewStubCompat indicatorContainerStub = (ViewStubCompat) view.findViewById(R.id.indicatorContainer);

    // set gravity
    FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) indicatorContainerStub.getLayoutParams();
    params.gravity = mIndicatorContainerGravity;
    indicatorContainerStub.setLayoutParams(params);

    indicatorContainerStub.setLayoutResource(mIndicatorContainer);
    indicatorContainerStub.setOnInflateListener(new ViewStubCompat.OnInflateListener() {
        @Override
        public void onInflate(ViewStubCompat stub, View inflated) {
            // there must be predefined ids
            if (inflated.findViewById(R.id.leftIndicator) == null) {
                throw new RuntimeException(getString(R.string.exception_left_indicator_id));
            } else if (inflated.findViewById(R.id.rightIndicator) == null) {
                throw new RuntimeException(getString(R.string.exception_right_indicator_id));
            } else if (inflated.findViewById(R.id.pageIndicator) == null) {
                throw new RuntimeException(getString(R.string.exception_page_indicator_id));
            }
            // check indicators instanceof
            else if (!(inflated.findViewById(R.id.leftIndicator) instanceof LeftToggleIndicator)) {
                throw new RuntimeException(getString(R.string.exception_previous_indicator_instanceof));
            } else if (!(inflated.findViewById(R.id.rightIndicator) instanceof RightToggleIndicator)) {
                throw new RuntimeException(getString(R.string.exception_next_indicator_instanceof));
            }

            mIndicatorsContainer = inflated;

            // must be initialized after inflating indicator container
            mRightIndicator = (RightToggleIndicator) mIndicatorsContainer.findViewById(R.id.rightIndicator);
            mLeftIndicator = (LeftToggleIndicator) mIndicatorsContainer.findViewById(R.id.leftIndicator);
            mRightIndicator.setListener(EasyIntroCarouselFragment.this);
            mRightIndicator.withDisabled(mRightIndicatorEnabled);
            mLeftIndicator.setListener(EasyIntroCarouselFragment.this);
            mLeftIndicator.withDisabled(mLeftIndicatorEnabled);

            addIndicator();
            updateToggleIndicators();
        }
    });
    indicatorContainerStub.inflate();
}
 
源代码3 项目: anvil   文件: AppCompatv7DSL.java
public static BaseDSL.ViewClassResult viewStubCompat() {
  return BaseDSL.v(ViewStubCompat.class);
}
 
源代码4 项目: anvil   文件: AppCompatv7DSL.java
public static Void viewStubCompat(Anvil.Renderable r) {
  return BaseDSL.v(ViewStubCompat.class, r);
}
 
源代码5 项目: anvil   文件: AppCompatv7DSL.java
public static Void onInflate(ViewStubCompat.OnInflateListener arg) {
  return BaseDSL.attr("onInflate", arg);
}
 
 类方法
 同包方法