android - 约束布局 - 如何使图像视图(框架)在整个屏幕上移动
问题描述
我有一个带有卡片视图的约束布局,比如火种。我已经更改了该视图的大小,并且喜欢可以移动(喜欢/不喜欢)。但是图像被剪切了(因为它在内部框架中)。我想手动移动整个屏幕上的框架。
这是布局文件
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/root_content_list"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="match_parent">
<in.zapr.onemedia.custom.ZTextView
android:id="@+id/heading"
android:layout_width="wrap_content"
android:layout_height="0dp"
app:layout_constraintHeight_percent="0.1"
android:text="@string/card_title"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_gravity="center"
android:gravity="bottom"
android:textColor="@color/cs_title"
app:type_face="@string/font_heavy"
android:textAppearance="?android:textAppearanceLarge"/>
<in.zapr.onemedia.custom.ZTextView
android:id="@+id/headingTip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="@string/card_tip"
android:layout_gravity="center"
android:gravity="center"
android:textColor="@color/cs_subtitle"
app:type_face="@string/font_heavy"
app:layout_constraintLeft_toLeftOf="@id/heading"
app:layout_constraintRight_toRightOf="@id/heading"
app:layout_constraintTop_toBottomOf="@id/heading"
android:textAppearance="?android:textAppearanceSmall"/>
<ProgressBar
android:id="@+id/pb_loading_content_selection"
android:layout_width="50dp"
android:layout_height="0dp"
app:layout_constraintLeft_toLeftOf="@id/ll_cardView"
app:layout_constraintRight_toRightOf="@id/ll_cardView"
app:layout_constraintTop_toTopOf="@id/ll_cardView"
app:layout_constraintBottom_toBottomOf="@id/ll_cardView"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_gravity="center"
android:layout_marginRight="8dp"
android:layout_marginTop="8dp"
android:visibility="gone"/>
<ImageView
android:id="@+id/btn_retry_content_selection"
android:layout_width="50dp"
android:layout_height="0dp"
app:layout_constraintLeft_toLeftOf="@id/ll_cardView"
app:layout_constraintRight_toRightOf="@id/ll_cardView"
app:layout_constraintTop_toTopOf="@id/ll_cardView"
app:layout_constraintBottom_toBottomOf="@id/ll_cardView"
android:padding="10dp"
android:visibility="gone"
android:layout_gravity="center"
app:srcCompat="@drawable/reload"/>
<LinearLayout
android:id="@+id/ll_cardView"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintHeight_percent="0.45"
app:layout_constraintWidth_percent="0.6"
android:layout_marginTop="10dp"
app:layout_constraintTop_toBottomOf="@id/headingTip"
app:layout_constraintBottom_toTopOf="@id/button_container"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<ImageView
android:id="@+id/cardViewBackground"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
app:srcCompat="@drawable/no_content_available"
android:clipToPadding="false"/>
<com.yuyakaido.android.cardstackview.CardStackView
android:id="@+id/card_stack_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible"
android:clipToPadding="false">
</com.yuyakaido.android.cardstackview.CardStackView>
</LinearLayout>
<RelativeLayout
android:id="@+id/button_container"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintHeight_percent="0.25"
app:layout_constraintBottom_toTopOf="@id/ll_Next"
app:layout_constraintTop_toBottomOf="@id/ll_cardView"
android:clipChildren="false">
<LinearLayout
android:id="@+id/ll_floating"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center">
<android.support.design.widget.FloatingActionButton
android:id="@+id/skip_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:fabSize="normal"
app:borderWidth="0dp"
android:padding="0dp"
app:useCompatPadding="true"
app:srcCompat="@drawable/onboarding_dislike"
app:backgroundTint="@android:color/white"/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/maybe_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:srcCompat="@drawable/onboarding_maybe"
app:backgroundTint="@android:color/transparent"
app:fabSize="normal"
app:borderWidth="0dp"
android:padding="0dp"
app:useCompatPadding="true"/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/like_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:srcCompat="@drawable/onboarding_like"
app:backgroundTint="@android:color/transparent"
app:fabSize="normal"
app:borderWidth="0dp"
android:padding="0dp"
app:useCompatPadding="true"/>
</LinearLayout>
<in.zapr.onemedia.custom.ZTextView
android:textAppearance="?android:textAppearanceSmall"
android:id="@+id/tv_not_seen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textColor="@color/cs_not_seen"
app:type_face="@string/font_heavy"
android:text="@string/not_seen_text"
android:layout_below="@id/ll_floating"/>
</RelativeLayout>
<in.zapr.onemedia.custom.ZButton
android:id="@+id/ll_Next"
android:layout_width="0dp"
android:layout_height="70dp"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:background="@drawable/layout_click_selector"
android:text="@string/letsGo"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@color/white"
android:focusable="false"
android:gravity="center"
app:type_face="@string/font_black"/>
</android.support.constraint.ConstraintLayout>
我从这里使用 CardStackView,
解决方案
尝试添加到ll_cardView
和root_content_list
这个属性
android:clipChildren="false"
android:clipToPadding="false"
推荐阅读
- python - 根据条件分成不同的行
- eclipse - 如何在 Eclipse IDE 中使用 Git 工作树?
- windows - 从 CMD 运行 PowerShell 脚本(棘手的一个)
- c - C递归 - 将数字的每个数字增加1,除了数字9,它将是0
- c - 仅使用 CMake 链接创建可执行文件
- ios - Swift:带有活动表格视图的弹出窗口
- javascript - 您可以将 javascript 面板拖到浏览器窗口外吗?
- python - 'NoneType' 对象不可下标错误
- python - 绘制具有多列的数据框,同时使行成为图例
- c++ - 类成员中 T[n] 与 T* 样式数组的含义