我已经创建了一个recyclerview视图,如下所示,我想在一行中添加多个对象。有人能帮我吗?? row_layout:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/cardView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
app:cardCornerRadius="@dimen/activity_vertical_margin"
app:cardElevation="@dimen/activity_vertical_margin">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginRight="16dp"/>
</RelativeLayout>
主要布局:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:expandedTitleMarginStart="60dp">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="255dp"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity"
android:id="@+id/collapsing_toolbar_layout"
android:background="@drawable/header1"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:fitsSystemWindows="true"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:background="#00000000"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin"
android:transitionGroup="false">
</android.support.v7.widget.Toolbar>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
</android.support.v7.widget.RecyclerView>
看起来像: https://drive.google.com/open?id=0ByeD1eD5C-v_aXkwQUlKS2w1dUU
答案 0 :(得分:1)
mRecycler.setLayoutManager(new GridLayoutManager(mContext, 2));
如果您想在它之间留出一些空间,请将itemDecoration添加到RecyclerView:
创建一个名为itemDecoration的新类:
public class SpacesItemDecoration extends RecyclerView.ItemDecoration {
private int space;
public SpacesItemDecoration(int space) {
this.space = space;
}
@Override
public void getItemOffsets(Rect outRect, View view,
RecyclerView parent, RecyclerView.State state) {
outRect.left = space;
outRect.right = space;
outRect.bottom = space;
// Add top margin only for the first item to avoid double space between items
if (parent.getChildLayoutPosition(view) == 0) {
outRect.top = space;
} else {
outRect.top = 0;
}
}
}
然后将其添加到您的主页:
mRecyclerView = (RecyclerView) rootView.findViewById(R.id.my_recycler_view);
int spacingInPixels = getResources().getDimensionPixelSize(R.dimen.spacing);
mRecyclerView.addItemDecoration(new SpacesItemDecoration(spacingInPixels));
希望这可以帮助你:)
答案 1 :(得分:0)
您可以将回收商的布局管理器设置为GridLayoutManager。 您可以定义所需的每行项目数。 见下文:
recyclerView.setLayoutManager(new GridLayoutManager(this, 2)); // 2 items per row
以下是一些例子:
http://www.sitepoint.com/mastering-complex-lists-with-the-android-recyclerview/ http://inducesmile.com/android/android-gridlayoutmanager-with-recyclerview-in-material-design/
答案 2 :(得分:0)
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="250dp"
android:background="#ffffff"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#e01e38">
<TextView
android:id="@+id/text_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textColor="#ffffff"
android:textSize="@dimen/text_big" />
<ImageView
android:id="@+id/img_setting"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
android:src="@drawable/icon_seting" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#d2d2d2">
<ImageView
android:id="@+id/image_cover"
android:layout_width="match_parent"
android:layout_height="700dp"
android:background="@drawable/profile_header"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text_weblink"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginBottom="20dp"
android:layout_marginLeft="@dimen/Profile_margin_left"
android:text="Weblink"
android:textColor="#e01e38"
android:textSize="15dp" />
<!--<TextView-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:text="sjkfsdokfhsdlfs"-->
<!--android:layout_centerHorizontal="true"-->
<!--android:layout_marginTop="10dp"-->
<!--android:textSize="20dp"/>-->
<!--<TextView-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:text="sjkfsdokfhsdlfs"-->
<!--android:layout_centerHorizontal="true"-->
<!--android:layout_marginTop="10dp"-->
<!--android:textSize="20dp"/>-->
<!--<TextView-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:text="sjkfsdokfhsdlfs"-->
<!--android:layout_centerHorizontal="true"-->
<!--android:layout_marginTop="10dp"-->
<!--android:textSize="20dp"/>-->
<!--<TextView-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:text="sjkfsdokfhsdlfs"-->
<!--android:layout_centerHorizontal="true"-->
<!--android:layout_marginTop="10dp"-->
<!--android:textSize="20dp"/>-->
<com.elite.watchme.commonFunctionalityController.CircularImageView
android:id="@+id/imageView"
android:layout_width="@dimen/Profile_image_width"
android:layout_height="@dimen/Profile_Image_hieght"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:src="@drawable/img_profile" />
<RelativeLayout
android:id="@+id/following_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignTop="@+id/imageView"
android:layout_marginLeft="@dimen/Profile_margin_left">
<TextView
android:id="@+id/textView_following_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView_left_following"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView_following_count"
android:text="Following"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rescope_contaner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/imageView"
android:layout_marginRight="@dimen/Profile_margin_right">
<TextView
android:id="@+id/textView_Rescope_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView_Rescope_count"
android:text="Rescopes"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/following_contaner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/Profile_margin_top">
<TextView
android:id="@+id/textView_followers_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView_follower"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView_followers_count"
android:text="Followers"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
</LinearLayout>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffe5e5e5"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/ColorWhite"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#d2d2d2"
android:padding="5dp">
<TextView
android:id="@+id/text_bio"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:textSize="15sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="130dp"
android:background="#ffffff"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<TextView
android:id="@+id/text_top_five"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Top 5 Post"
android:textColor="#e01e38"
android:textSize="15sp" />
<!--<com.elite.watchme.commonFunctionalityController.HorizontalListView-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent"-->
<!--app:dividerWidth="10dp" />-->
<!--<android.support.v7.widget.RecyclerView-->
<!--android:id="@+id/Horizontal_profile_Images"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent"-->
<!--android:layout_below="@+id/text_top_five"-->
<!--android:orientation="horizontal"-->
<!--android:paddingTop="5dp"-->
<!--app:layoutManager="android.support.v7.widget.LinearLayoutManager" />-->
<android.support.v7.widget.RecyclerView
android:id="@+id/Horizontal_profile_Images"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/text_top_five"
android:paddingTop="5dp"
android:scrollbars="vertical"></android.support.v7.widget.RecyclerView>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="600dp"
android:background="@color/ColorWhite"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<TextView
android:id="@+id/text_recent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Recent"
android:textColor="#e01e38"
android:textSize="15sp" />
<!--<GridView-->
<!--android:id="@+id/profile_grid_images"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent"-->
<!--android:layout_below="@+id/text_recent"-->
<!--android:clickable="true"-->
<!--android:columnWidth="100dp"-->
<!--android:drawSelectorOnTop="true"-->
<!--android:focusable="true"-->
<!--android:gravity="center"-->
<!--android:numColumns="auto_fit"-->
<!--android:paddingTop="5dp"-->
<!--android:stretchMode="columnWidth"-->
<!--android:verticalSpacing="10dp">-->
<!--</GridView>-->
<android.support.v7.widget.RecyclerView
android:id="@+id/profile_grid_images"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/text_recent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</RelativeLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>