我在recycler-view
中使用activity_main.xml
,在card_item_list.xml
中使用多个卡片视图。我无法滚动卡片视图。如果我触摸cardview
以外的任何地方,则效果很好。但是,如果我点击cardview,则recycler-view的滚动行为不起作用。
activity_main.xml
<ViewFlipper
android:id="@+id/day_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ViewFlipper
android:id="@+id/view_flipper"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/grey_ee"
android:focusableInTouchMode="true"
android:paddingBottom="35dp">
<TextView
android:id="@+id/error_container_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="20dp"
android:elevation="1dp"
android:gravity="center"
android:padding="10dp"
/>
<android.support.v7.widget.RecyclerView
android:id="@+id/time_duration_recycler_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/error_container_text"
android:layout_marginTop="20dp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/hours_detail_recycler_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/time_duration_recycler_view"
android:layout_centerHorizontal="true"
android:layout_marginTop="25dp"
android:nestedScrollingEnabled="false" />
</RelativeLayout>
card_item.xml
<RelativeLayout
android:id="@+id/errors_and_notifications_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/divider_for_details"
android:background="@color/white"
android:paddingTop="15dp">
<android.support.v7.widget.CardView
android:id="@+id/card_view_errors"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="0dp"
app:cardElevation="0dp">
<RelativeLayout
android:id="@+id/single_error_row"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/details"
android:layout_marginBottom="15dp"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp">
<ImageView
android:id="@+id/time_entry_error_image"
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_centerVertical="true"
android:layout_marginLeft="5dp"
android:src="@drawable/error" />
<TextView
android:id="@+id/single_error_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="45dp"/>
</RelativeLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
android:id="@+id/card_view_notifications"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/card_view_errors"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="0dp"
app:cardElevation="0dp">
<RelativeLayout
android:id="@+id/single_notification_row"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="15dp"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp">
<ImageView
android:id="@+id/time_entry_notification_image"
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_centerVertical="true"
android:layout_marginLeft="5dp"
android:src="@drawable/information" />
<TextView
android:id="@+id/single_notification_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="45dp"
android:textColor="@color/black_58"
/>
</RelativeLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
我也添加了Viewflipper。这是原因吗? 您可以看到第一个XML具有两个recycler-view。一个工作正常,因为该回收者视图没有卡片视图。
答案 0 :(得分:0)
一旦尝试,
recylerView.setHasFixedSize(true);
recylerView.setNestedScrollingEnabled(false);
答案 1 :(得分:0)
关闭recyclerview水平滚动。
LayoutManager layoutManager = new LinearLayoutManager(this,RecyclerView.VERTICAL,false)
{
@override
public Boolean canScrollHorizontally(){
return false;
}
}
recyclerView.setLayout(layoutManager);
答案 2 :(得分:0)
对于main.xml,请尝试进行如下更改:
print(''.join([str(b)[::-1]+a for a,b in dict.items()[::-1]]))
注意:变量可能有所不同,但是逻辑对我有用。