Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android RecyclerView视图实现_Android_Listview_Android Recyclerview_Android Linearlayout - Fatal编程技术网

Android RecyclerView视图实现

Android RecyclerView视图实现,android,listview,android-recyclerview,android-linearlayout,Android,Listview,Android Recyclerview,Android Linearlayout,我正试图开发一个在我脑海中具有卡片视觉的应用程序。我试图模仿LinkedIn的布局: 请注意,在每个视图的边缘,您可以看到下一张卡或上一张卡。 我曾尝试在水平模式下使用RecyclerView和LinearLayoutManager实现相同的功能。 这是它的结果: 这是我的密码: profile\u card\u view.xml(这是RecyclerView中每个卡的布局文件) Profile\u Cards\u Adapter.java-用于recyclerView的适配器 <

我正试图开发一个在我脑海中具有卡片视觉的应用程序。我试图模仿LinkedIn的布局:

请注意,在每个视图的边缘,您可以看到下一张卡或上一张卡。

我曾尝试在
水平模式下使用
RecyclerView
LinearLayoutManager
实现相同的功能。

这是它的结果:

这是我的密码:

profile\u card\u view.xml(这是RecyclerView中每个卡的布局文件)


Profile\u Cards\u Adapter.java-用于recyclerView的适配器

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:background="#ededed"
        android:padding="10dp"
        android:layout_margin="10dp"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:elevation="11dp">
    <TextView
        android:text="Tanishq Sharma"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/profile_name"
        android:padding="20dp" />

    <TextView
        android:text="I am an entreprenuer, developer."
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/profile_about"
        android:padding="20dp" />

    <TextView
        android:text="9819075165"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/profile_mobile"
        android:padding="20dp" />

    <TextView
        android:text="Mumbai"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/profile_location"
        android:padding="20dp" />

        </LinearLayout>

    </android.support.v7.widget.CardView>
</LinearLayout>
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import java.util.List;

/**
 * Created by tanishqsharma on 31/12/16.
 */

public class Profile_Cards_Adapter extends RecyclerView.Adapter<Profile_Cards_Adapter.ViewHolder> {

    List<Profile_Card> items;

    public Profile_Cards_Adapter(List<Profile_Card> items)
    {
        this.items = items;
    }

    @Override
    public Profile_Cards_Adapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View v = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.profile_card_view, parent, false);
        ViewHolder viewHolder = new ViewHolder(v);
        return viewHolder;
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {

        Profile_Card card = items.get(position);
        holder.user_name.setText(card.getName());
        holder.user_about.setText(card.getAbout());
        holder.user_contact.setText(card.getContact());
        holder.user_location.setText(card.getLocation());
    }


    @Override
    public int getItemCount() {
        return items.size();
    }

    class ViewHolder extends RecyclerView.ViewHolder{

        public TextView user_name;
        public TextView user_location;
        public TextView user_about;
        public TextView user_contact;
        public ViewHolder(View itemView) {

            super(itemView);

            user_name = (TextView) itemView.findViewById(R.id.profile_name);
            user_about = (TextView) itemView.findViewById(R.id.profile_about);
            user_contact = (TextView) itemView.findViewById(R.id.profile_mobile);
            user_location = (TextView) itemView.findViewById(R.id.profile_location);
        }
    }
}
导入android.support.v7.widget.RecyclerView;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.TextView;
导入java.util.List;
/**
*由tanishqsharma于2016年12月31日创建。
*/
公共类配置文件\u卡\u适配器扩展了RecyclerView.Adapter{
清单项目;
公共配置文件\u卡\u适配器(列表项)
{
这个项目=项目;
}
@凌驾
公共配置文件\u卡\u适配器.ViewHolder onCreateViewHolder(ViewGroup父级,int-viewType){
视图v=LayoutInflater.from(parent.getContext())
.充气(R.layout.profile\u card\u视图,父视图,错误);
视窗夹持器视窗夹持器=新视窗夹持器(v);
返回视图持有者;
}
@凌驾
公共无效onBindViewHolder(ViewHolder,int位置){
Profile_Card Card=items.get(位置);
holder.user_name.setText(card.getName());
holder.user_about.setText(card.getAbout());
holder.user_contact.setText(card.getContact());
holder.user_location.setText(card.getLocation());
}
@凌驾
public int getItemCount(){
返回items.size();
}
类ViewHolder扩展了RecyclerView.ViewHolder{
公共文本视图用户名;
公共文本视图用户位置;
公共文本查看用户关于;
公共文本视图用户\ u联系人;
公共视图持有者(视图项视图){
超级(项目视图);
user_name=(TextView)itemView.findViewById(R.id.profile_name);
用户_about=(TextView)itemView.findViewById(R.id.profile_about);
用户\联系人=(TextView)itemView.findViewById(R.id.profile\ u mobile);
用户位置=(TextView)itemView.findViewById(R.id.profile\u位置);
}
}
}
我无法获得像LinkedIn那样的布局,在那里我可以看到下一张和上一张卡片的边缘。

你必须使用我在评论中提到的布局。阅读更多关于它的信息


提示:你可以利用这一点来了解它。

使用
ViewPager
来代替。哦,任何细节都是好的。要求解释反对票的原因。