CardView Recycler 无法使用我的列表<SomeModel>
CardView Recycler is not working with my List<SomeModel>
帮我解决这个问题,我在我的 logcat 上试过了,似乎来自 DatabaseListFragment 的行在设置适配器时给我一个错误:
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE
还是我的 RecyclerAdapter 出错了?
这是我的 activity 作为 DatabaseListFragment
public class DatabaseListFragment extends Fragment {
private DatabaseAccess db;
public DatabaseListFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
db = DatabaseAccess.getInstance(getActivity().getApplicationContext());
db.open();
List<TranslateModel> quotes = db.getAllTranslations();
db.close();
//View header = inflater.inflate(R.layout.listview_header_row, null);
View view = inflater.inflate(R.layout.listview_item_row, container, false);
RecyclerView recyclerView = (RecyclerView)view.findViewById(R.id.listView);
RecyclerAdapter adapter = new RecyclerAdapter(getActivity(), quotes);
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity().getApplicationContext()));
return view;
}
}
listview_item_row.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="5dp">
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/lang_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
card_view:cardCornerRadius="5dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/icon_lang"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_margin="5dp"
android:background="@drawable/circular_textview"
android:fontFamily="sans-serif-thin"
android:gravity="center"
android:text="SA"
android:textAllCaps="true"
android:textColor="#FFF"
android:textSize="32sp" />
<TextView
android:id="@+id/txtID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_toRightOf="@id/icon_lang"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="10dp"
android:text="Starting Android"
android:textStyle="bold" />
<TextView
android:id="@+id/txtArabic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/icon_lang"
android:padding="5dp"
android:text="arab" />
<TextView
android:id="@+id/txtEnglish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/txtArabic"
android:padding="5dp"
android:text="english" />
<TextView
android:id="@+id/txtStructure"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/txtEnglish"
android:padding="5dp"
android:text="structure" />
</RelativeLayout>
</android.support.v7.widget.CardView>
我的型号:
public class TranslateModel {
//private variables
public int _id;
public String _english;
public String _arabic;
public String _structure;
// Empty constructor
public TranslateModel(){
}
// constructor
public TranslateModel(int id, String english, String arabic, String structure){
this._id = id;
this._english = english;
this._arabic = arabic;
this._structure = structure;
}
// constructor
public TranslateModel(int id, String english, String _arabic){
this._id = id;
this._english = english;
this._arabic = _arabic;
}
和我的RecyclerAdapter.java
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerViewHolder> {
List<TranslateModel> mTModel;
Context context;
LayoutInflater inflater;
public RecyclerAdapter(Context context, List<TranslateModel> tModel) {
this.context = context;
inflater = LayoutInflater.from(context);
mTModel = tModel;
}
@Override
public RecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = inflater.inflate(R.layout.listview_item_row, parent, false);
RecyclerViewHolder viewHolder = new RecyclerViewHolder(v);
return viewHolder;
}
@Override
public void onBindViewHolder(RecyclerViewHolder holder, int position) {
// Get the data model based on position
TranslateModel translate = mTModel.get(position);
//holder._id.setText(name[position]);
holder._id.setText(translate._id);
holder._arabic.setText(translate._arabic);
holder._english.setText(translate._english);
holder._structure.setText(translate._structure);
holder._icon.setText(translate._id);
holder._icon.setOnClickListener(clickListener);
holder.imageView.setTag(holder);
}
private View.OnClickListener clickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
RecyclerViewHolder vholder = (RecyclerViewHolder) v.getTag();
int position = vholder.getPosition();
Toast.makeText(context,"This is position " + position, Toast.LENGTH_LONG ).show();
}
};
@Override
public int getItemCount() {
return (null != mTModel ? mTModel.size() : 0);
}
}
编辑:
这是我的日志...错误从这里开始...
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performSaveInstanceState (Landroid/os/Bundle;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performSaveInstanceState, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5126: Landroid/support/v4/app/Fragment;.performSaveInstanceState (Landroid/os/Bundle;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0073
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.restoreViewState (Landroid/os/Bundle;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.restoreViewState, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5132: Landroid/support/v4/app/Fragment;.restoreViewState (Landroid/os/Bundle;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0095
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performCreateView (Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performCreateView, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5113: Landroid/support/v4/app/Fragment;.performCreateView (Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View;
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00d3
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performPrepareOptionsMenu (Landroid/view/Menu;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performPrepareOptionsMenu, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5123: Landroid/support/v4/app/Fragment;.performPrepareOptionsMenu (Landroid/view/Menu;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00e1
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performStop ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performStop, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5128: Landroid/support/v4/app/Fragment;.performStop ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00f7
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performCreateOptionsMenu (Landroid/view/Menu;Landroid/view/MenuInflater;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performCreateOptionsMenu, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5112: Landroid/support/v4/app/Fragment;.performCreateOptionsMenu (Landroid/view/Menu;Landroid/view/MenuInflater;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x011d
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performOptionsItemSelected (Landroid/view/MenuItem;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performOptionsItemSelected, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5119: Landroid/support/v4/app/Fragment;.performOptionsItemSelected (Landroid/view/MenuItem;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x020d
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performDetach ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performDetach, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5116: Landroid/support/v4/app/Fragment;.performDetach ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0255
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performMultiWindowModeChanged (Z)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performMultiWindowModeChanged, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5118: Landroid/support/v4/app/Fragment;.performMultiWindowModeChanged (Z)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x02d9
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performConfigurationChanged (Landroid/content/res/Configuration;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performConfigurationChanged, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5109: Landroid/support/v4/app/Fragment;.performConfigurationChanged (Landroid/content/res/Configuration;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0313
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performResume ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performResume, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5125: Landroid/support/v4/app/Fragment;.performResume ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0385
Disconnected from the target VM, address: 'localhost:9662', transport: 'socket'`
嗯.. 你应该 post 你的 Logcat 有错误。
但是,一个错误是在设置 LayoutManager
之前调用 setAdapter()
因此,尝试按如下方式更新您的代码:
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE
帮我解决这个问题,我在我的 logcat 上试过了,似乎来自 DatabaseListFragment 的行在设置适配器时给我一个错误:
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE
还是我的 RecyclerAdapter 出错了?
这是我的 activity 作为 DatabaseListFragment
public class DatabaseListFragment extends Fragment {
private DatabaseAccess db;
public DatabaseListFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
db = DatabaseAccess.getInstance(getActivity().getApplicationContext());
db.open();
List<TranslateModel> quotes = db.getAllTranslations();
db.close();
//View header = inflater.inflate(R.layout.listview_header_row, null);
View view = inflater.inflate(R.layout.listview_item_row, container, false);
RecyclerView recyclerView = (RecyclerView)view.findViewById(R.id.listView);
RecyclerAdapter adapter = new RecyclerAdapter(getActivity(), quotes);
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity().getApplicationContext()));
return view;
}
}
listview_item_row.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="5dp">
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/lang_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
card_view:cardCornerRadius="5dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/icon_lang"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_margin="5dp"
android:background="@drawable/circular_textview"
android:fontFamily="sans-serif-thin"
android:gravity="center"
android:text="SA"
android:textAllCaps="true"
android:textColor="#FFF"
android:textSize="32sp" />
<TextView
android:id="@+id/txtID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_toRightOf="@id/icon_lang"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="10dp"
android:text="Starting Android"
android:textStyle="bold" />
<TextView
android:id="@+id/txtArabic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/icon_lang"
android:padding="5dp"
android:text="arab" />
<TextView
android:id="@+id/txtEnglish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/txtArabic"
android:padding="5dp"
android:text="english" />
<TextView
android:id="@+id/txtStructure"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txtID"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@id/txtEnglish"
android:padding="5dp"
android:text="structure" />
</RelativeLayout>
</android.support.v7.widget.CardView>
我的型号:
public class TranslateModel {
//private variables
public int _id;
public String _english;
public String _arabic;
public String _structure;
// Empty constructor
public TranslateModel(){
}
// constructor
public TranslateModel(int id, String english, String arabic, String structure){
this._id = id;
this._english = english;
this._arabic = arabic;
this._structure = structure;
}
// constructor
public TranslateModel(int id, String english, String _arabic){
this._id = id;
this._english = english;
this._arabic = _arabic;
}
和我的RecyclerAdapter.java
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerViewHolder> {
List<TranslateModel> mTModel;
Context context;
LayoutInflater inflater;
public RecyclerAdapter(Context context, List<TranslateModel> tModel) {
this.context = context;
inflater = LayoutInflater.from(context);
mTModel = tModel;
}
@Override
public RecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = inflater.inflate(R.layout.listview_item_row, parent, false);
RecyclerViewHolder viewHolder = new RecyclerViewHolder(v);
return viewHolder;
}
@Override
public void onBindViewHolder(RecyclerViewHolder holder, int position) {
// Get the data model based on position
TranslateModel translate = mTModel.get(position);
//holder._id.setText(name[position]);
holder._id.setText(translate._id);
holder._arabic.setText(translate._arabic);
holder._english.setText(translate._english);
holder._structure.setText(translate._structure);
holder._icon.setText(translate._id);
holder._icon.setOnClickListener(clickListener);
holder.imageView.setTag(holder);
}
private View.OnClickListener clickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
RecyclerViewHolder vholder = (RecyclerViewHolder) v.getTag();
int position = vholder.getPosition();
Toast.makeText(context,"This is position " + position, Toast.LENGTH_LONG ).show();
}
};
@Override
public int getItemCount() {
return (null != mTModel ? mTModel.size() : 0);
}
}
编辑: 这是我的日志...错误从这里开始...
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performSaveInstanceState (Landroid/os/Bundle;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performSaveInstanceState, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5126: Landroid/support/v4/app/Fragment;.performSaveInstanceState (Landroid/os/Bundle;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0073
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.restoreViewState (Landroid/os/Bundle;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.restoreViewState, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5132: Landroid/support/v4/app/Fragment;.restoreViewState (Landroid/os/Bundle;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0095
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performCreateView (Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performCreateView, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5113: Landroid/support/v4/app/Fragment;.performCreateView (Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View;
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00d3
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performPrepareOptionsMenu (Landroid/view/Menu;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performPrepareOptionsMenu, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5123: Landroid/support/v4/app/Fragment;.performPrepareOptionsMenu (Landroid/view/Menu;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00e1
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performStop ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performStop, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5128: Landroid/support/v4/app/Fragment;.performStop ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x00f7
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performCreateOptionsMenu (Landroid/view/Menu;Landroid/view/MenuInflater;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performCreateOptionsMenu, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5112: Landroid/support/v4/app/Fragment;.performCreateOptionsMenu (Landroid/view/Menu;Landroid/view/MenuInflater;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x011d
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performOptionsItemSelected (Landroid/view/MenuItem;)Z from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performOptionsItemSelected, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5119: Landroid/support/v4/app/Fragment;.performOptionsItemSelected (Landroid/view/MenuItem;)Z
D/dalvikvm: VFY: replacing opcode 0x6f at 0x020d
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performDetach ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performDetach, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5116: Landroid/support/v4/app/Fragment;.performDetach ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0255
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performMultiWindowModeChanged (Z)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performMultiWindowModeChanged, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5118: Landroid/support/v4/app/Fragment;.performMultiWindowModeChanged (Z)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x02d9
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performConfigurationChanged (Landroid/content/res/Configuration;)V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performConfigurationChanged, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5109: Landroid/support/v4/app/Fragment;.performConfigurationChanged (Landroid/content/res/Configuration;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0313
I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v4/app/Fragment;.performResume ()V from Lcom/eng/arab/tranlator/androidtranslator/fragment/DatabaseListFragment;)
I/dalvikvm: Could not find method android.support.v4.app.Fragment.performResume, referenced from method com.eng.arab.tranlator.androidtranslator.fragment.DatabaseListFragment.access$super
W/dalvikvm: VFY: unable to resolve virtual method 5125: Landroid/support/v4/app/Fragment;.performResume ()V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0385
Disconnected from the target VM, address: 'localhost:9662', transport: 'socket'`
嗯.. 你应该 post 你的 Logcat 有错误。
但是,一个错误是在设置 LayoutManager
setAdapter()
因此,尝试按如下方式更新您的代码:
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
recyclerView.setAdapter(adapter); // THE ERROR GOES HERE