Android Studio 上面的预览是正确显示的,但是在手机上跑的时候RecyclerView就无法显示了。
本人大学狗一名,求大神指教
下面贴码
Adapter :
package com.example.amoxicilin.null_test.adapter;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import com.example.amoxicilin.null_test.CommunicationFragment;
import com.example.amoxicilin.null_test.R;
import com.example.amoxicilin.null_test.adapter.DummyContent.DummyItem;
import java.util.List;
public class MyItemRecyclerViewAdapter extends RecyclerView.Adapter<MyItemRecyclerViewAdapter.ViewHolder> implements CommunicationFragment.OnListFragmentInteractionListener {
private final List<DummyContent.DummyItem> mValues;
private final CommunicationFragment.OnListFragmentInteractionListener mListener;
public MyItemRecyclerViewAdapter(List<DummyContent.DummyItem> items, CommunicationFragment.OnListFragmentInteractionListener listener) {
mValues = items;
mListener = listener;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_com, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(final ViewHolder holder, int position) {
holder.mItem = mValues.get(position);
holder.mTitleTestView.setText(mValues.get(position).id);
holder.mInfoTestView.setText(mValues.get(position).content);
holder.mView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (null != mListener) {
// Notify the active callbacks interface (the activity, if the
// fragment is attached to one) that an item has been selected.
mListener.onListFragmentInteraction(holder.mItem);
}
}
});
}
public int getItemCount() {
return mValues.size();
}
public void onListFragmentInteraction(DummyItem item) {
}
public class ViewHolder extends RecyclerView.ViewHolder {
public final View mView;
public final ImageView mImgTestView;
public final TextView mTitleTestView;
public final TextView mInfoTestView;
public final Button mButtonLeft;
public final Button mButtonRight;
public DummyItem mItem;
public ViewHolder(View view) {
super(view);
mView = view;
mImgTestView= (ImageView) view.findViewById(R.id.ImgTest);
mTitleTestView = (TextView) view.findViewById(R.id.TitleTest);
mInfoTestView = (TextView) view.findViewById(R.id.InfoTest);
mButtonLeft=(Button)view.findViewById(R.id.list_item_button_left);
mButtonRight=(Button)view.findViewById(R.id.list_item_button_right);
}
@Override
public String toString() {
return super.toString() + " '" + mInfoTestView.getText() + "'";
}
}
}
Activity
:
package com.example.amoxicilin.null_test;
import android.app.Fragment;
import android.content.Context;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.example.amoxicilin.null_test.adapter.DummyContent;
import com.example.amoxicilin.null_test.adapter.MyItemRecyclerViewAdapter;
public class CommunicationFragment extends Fragment {
private int mColumnCount = 1;
private OnListFragmentInteractionListener mListener;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootview=inflater.inflate(R.layout.fragment_comunication,container, false);
if (rootview instanceof RecyclerView) {
Context context = rootview.getContext();
RecyclerView recyclerView = (RecyclerView) rootview;
if (mColumnCount <= 1) {
recyclerView.setLayoutManager(new LinearLayoutManager(context));
} else {
recyclerView.setLayoutManager(new GridLayoutManager(context, mColumnCount));
}
recyclerView.setAdapter(new MyItemRecyclerViewAdapter(DummyContent.ITEMS, mListener));
}
RecyclerView recyclerView = (RecyclerView)rootview.findViewById(R.id.id_recyclerview);
return rootview;
}
public interface OnListFragmentInteractionListener {
void onListFragmentInteraction(DummyContent.DummyItem item);
}
}
布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.amoxicilin.null_test.CommunicationFragment">
<SearchView
android:id="@+id/search"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#F0F0F0F0" >
</SearchView>
<android.support.v7.widget.RecyclerView
android:id="@+id/id_recyclerview"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layoutManager="LinearLayoutManager"
android:dividerHeight="10dp"
android:padding="10dp"
android:scrollbarStyle="outsideOverlay"
tools:listitem="@layout/item_com" />
</LinearLayout>
求前辈们指点指点