Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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访问列表视图_Android_Arrays_Android Listview - Fatal编程技术网

回收视图中的Android访问列表视图

回收视图中的Android访问列表视图,android,arrays,android-listview,Android,Arrays,Android Listview,我想在RecyclerView中创建一个ListView,它应该以列表形式显示一些数据。我目前有一个基本的适配器和RecyclerView,里面没有ListView,所以有人能告诉我如何修改代码,在RecyclerView中包含ListView吗 适配器: public class RVAdapter extends RecyclerView.Adapter<RVAdapter.AdapterViewHolder> { public static class Adapter

我想在RecyclerView中创建一个ListView,它应该以列表形式显示一些数据。我目前有一个基本的适配器和RecyclerView,里面没有ListView,所以有人能告诉我如何修改代码,在RecyclerView中包含ListView吗

适配器:

public class RVAdapter extends RecyclerView.Adapter<RVAdapter.AdapterViewHolder> {

    public static class AdapterViewHolder extends RecyclerView.ViewHolder {

        TextView title;
        TextView summary;

        AdapterViewHolder(View itemView) {
            super(itemView);
            title = (TextView) itemView.findViewById(R.id.recycler_list_title);
            summary = (TextView) itemView.findViewById(R.id.recycler_list_summary);
        }
    }

    List<Items> items;

    public RVAdapter(List<Items> items){
        this.items = items;
    }

    @Override
    public void onAttachedToRecyclerView(RecyclerView recyclerView) {
        super.onAttachedToRecyclerView(recyclerView);
    }

    @Override
    public AdapterViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
        View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_recycler, viewGroup, false);
        AdapterViewHolder pvh = new AdapterViewHolder(v);
        return pvh;
    }

    @Override
    public void onBindViewHolder(AdapterViewHolder adapterViewHolder, int i) {
        adapterViewHolder.title.setText(item.get(i).title);
        adapterViewHolder.summary.setText(item.get(i).summary);
    }

    @Override
    public int getItemCount() {
        return item.size();
    }
}
布局:

<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <android.support.v7.widget.RecyclerView
            android:id="@+id/recycler"
            android:layout_height="match_parent"
            android:layout_width="match_parent"
            android:scrollbars="vertical"
            android:layout_marginTop="0dp" />
</LinearLayout>
列出回收商:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:paddingRight="?android:attr/scrollbarSize">

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="15dp"
        android:layout_marginEnd="6dp"
        android:layout_marginTop="6dp"
        android:layout_marginBottom="6dp">

        <TextView 
            android:id="@+id/recycler_list_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="@color/textColor"
            android:textSize="16sp"
            android:layout_alignParentLeft="true"/>

        <TextView 
            android:id="@+id/recycler_list_summary"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="@color/textColorSub"
            android:textSize="14sp"
            android:layout_alignParentRight="true" />

    </RelativeLayout>

</LinearLayout>
如何创建ListView: 私人清单项目; 私人回收车

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);


        rv = (RecyclerView) ((Activity) MainActivity.context).findViewById(R.id.recycler);
        rv.setHasFixedSize(true);
        rv.setLayoutManager(new LinearLayoutManager(this));

        initializeData();
        initializeAdapter();

        }

    private void initializeData(){
        item = new ArrayList<>();
        item.add(new Items("Title", "Summary"));
    }

    private void initializeAdapter() {
        RVAdapter adapter = new RVAdapter(item);
        rv.setAdapter(adapter);
    }
}

您可以通过这种方式获取父listView

那么R.id.listView是否是内部listView?是的listView是子视图,parentListView是父视图我更新了我的问题以包含代码,我如何将此代码转换为在已存在的listView中包含另一个listView?再次更新,请再看一看如果你将外部列表视图更改为recyclerview,可能会更好。我该怎么做?@EpicPandaForce我更新了问题,你能看一下吗?
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);


        rv = (RecyclerView) ((Activity) MainActivity.context).findViewById(R.id.recycler);
        rv.setHasFixedSize(true);
        rv.setLayoutManager(new LinearLayoutManager(this));

        initializeData();
        initializeAdapter();

        }

    private void initializeData(){
        item = new ArrayList<>();
        item.add(new Items("Title", "Summary"));
    }

    private void initializeAdapter() {
        RVAdapter adapter = new RVAdapter(item);
        rv.setAdapter(adapter);
    }
}
ListView listview = (ListView) findViewById(R.id.listview);
ListView parentListView=(ListView)listview.getParent();