我正在缩放LinearLayout
fragment
ViewPager
clickable
,但子视图不是rootView
。
这是public class CarouselLinearLayout extends LinearLayout {
private float scale = CarouselPagerAdapter.BIG_SCALE;
public CarouselLinearLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CarouselLinearLayout(Context context) {
super(context);
}
public void setScaleBoth(float scale) {
this.scale = scale;
this.invalidate();
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// The main mechanism to display scale animation, you can customize it as your needs
int w = this.getWidth();
int h = this.getHeight();
h = h - ((h / 2) / 2) / 2;
canvas.scale(scale, scale, w / 2, h);// / 2
}
}
rootview
以下是我缩放LinearLayout linearLayout = (LinearLayout) inflater.inflate(R.layout.pager_fragment_dashboard, container, false);
CarouselLinearLayout root = (CarouselLinearLayout) linearLayout.findViewById(R.id.root_container);
root.setScaleBoth(scale);
。
PagerView
它的样子。
每个圈子都是-------------------------------
Value 1 Value 2 Sum
-------------------------------
2 5 ?
5 10 ?
-------------------------------
的页面。 1 - 2 - 3
第2页中的视图是可点击的,但第1页和第3页中的视图无法点击。我该如何解决这个问题?
答案 0 :(得分:0)
您应该在xml中将特定Linear Layout
设置为clickable
,如下所示:
android:clickable="true"
示例:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:clickable="true"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
答案 1 :(得分:0)
如果您的transformPage(View view, float position)
有三个页面且中心一个应该缩放,那么请使用setScaleX()
来实现此目的。
请检查此问题:ViewPager with mutiple visible children and selected bigger.
基本上,您覆盖setScaleY()
并为中心页面进行转换。
对于正常缩放,请始终在setScaleBoth()
中调用onDraw()
和class Book extends Eloquent
{
public function chapters()
{
return $this->has_many('Chapter');
}
protected static function boot() {
parent::boot();
static::deleting(function($book) {
$book->chapters()->delete();
});
}
}
,而不是在class Chapter extends Eloquent
{
public function subChapters()
{
return $this->has_many('SubChapter');
}
protected static function boot() {
parent::boot();
static::deleting(function($chapter) {
$chapter->subChapters()->delete();
});
}
}
中缩放画布。