【HorizontalScrollView控件里面可以嵌套自定义ViewGroup吗?嵌套之后不显示ViewGroup里的控件。】
在网上看到的一个自定义ViewGroup控件,是一个实现3D旋转效果的容器类,
然后试图把它往HorizontalScrollView里面套,结果发现不显示。是为什么?
是因为HorizontalScrollView里面不能包含ViewGroup吗?还是其他地方有问题?
想实现多个3D旋转容器一起放在界面里,且可以横向拖动,类似于coverflow那种效果。如果这个方法不行,有没有其他思路?刚接触Android没多久,如果有明显错误的地方,希望大家直接指出,谢谢~
下面是布局代码:
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1">
<com.study.testanything.custom.StereoView
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/p12"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/p10"/>
</com.study.testanything.custom.StereoView>
</HorizontalScrollView>
下面是StereoView重写onMeasure方法的代码,如果有其他需要贴出的代码,大家请指出~
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
measureChildren(widthMeasureSpec, heightMeasureSpec);
mWidth = getMeasuredWidth();
mHeight = getMeasuredHeight();
//滑动到设置的StartScreen位置
scrollTo(0, mStartScreen * mHeight);
}
你是想做广告banner图的那种3d切花那效果吗 如果是的话 你可以使用ViewPager 并且有很多的开源动画 如果想方便一点 可以直接中使用jazzViewpager框架
onMeasure方法没贴好,这里重贴
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
measureChildren(widthMeasureSpec, heightMeasureSpec);
mWidth = getMeasuredWidth();
mHeight = getMeasuredHeight();
//滑动到设置的StartScreen位置
scrollTo(0, mStartScreen * mHeight);
}
我在这篇博客里看到的这个3D旋转容器,就想用它代替照片实现coverflow效果。
单个的效果是这样的:
比如正常的coverflow效果是这样的:
现在我不希望每个图片只是单纯的一张图片,而是多个图片组成的这种可以立体旋转的容器,
这里我在RecyclerView里面嵌套多个这个容器,效果是这样的,很僵硬,不知道有没有别的方法
你说的僵硬是哪里僵硬 什么是层次感 你说这些抽象的概念 是很难听懂 如果你有一种想实现的效果 首先你得效果图 产品设计交互的时候都要有动态图 开发才能参考去设计这种效果