CardView Recycler가 내 List <SomeModel>에서 작동하지 않습니다.

Ric17101

문제를 해결하도록 도와주세요. 내 logcat에서 시도했는데 DatabaseListFragment 의 줄 이 어댑터를 설정하는 동안 오류를 발생 시키는 것 같습니다 .

recyclerView.setAdapter(adapter); // THE ERROR GOES HERE

아니면 내 RecyclerAdapter에 오류가 있습니까?

다음은 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'`
W0rmH0le

글쎄 .. Logcat을 오류와 함께 게시해야합니다.

그러나, 하나의 오류는 호출입니다 setAdapter()을 설정하기 전에이LayoutManager

따라서 다음과 같이 코드를 업데이트하십시오.

recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));

recyclerView.setAdapter(adapter); // THE ERROR GOES HERE

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

EditText가 Cardview 내부에있을 때 ImeOption DONE이 작동하지 않습니다.

분류에서Dev

setLayouParams가 cardView에서 작동하지 않았습니다.

분류에서Dev

strokeColor 및 strokeWidth가 androidx.cardview.widget.CardView android에서 작동하지 않습니다.

분류에서Dev

활동이 시작될 때 CardView가 recyclerview 내에 표시되지 않습니까?

분류에서Dev

내 활동에서 notifyDataSetChanged가 작동하지 않습니다.

분류에서Dev

Recycler View가 Fragment에서 작동하지 않습니다.

분류에서Dev

내 html 문서에서 JavaScript가 작동하지 않습니다.

분류에서Dev

내 변수에서 찾기가 작동하지 않습니다.

분류에서Dev

R Shiny downloadHandler가 flexdashboard 내에서 작동하지 않습니다.

분류에서Dev

addEventListener가 함수 내에서 작동하지 않습니다.

분류에서Dev

Timer onReceive가 NavigationView 내에서 작동하지 않습니다.

분류에서Dev

gcloud auth가 dockerfile 내에서 작동하지 않습니다.

분류에서Dev

@Repository 내에서 SpringBoot @Autowire가 작동하지 않습니다.

분류에서Dev

현실 내에서 orderBy DESC가 작동하지 않습니다.

분류에서Dev

onChange 함수 내에서 setState가 작동하지 않습니다.

분류에서Dev

내 Centos 7.3에서 sudo가 작동하지 않습니다.

분류에서Dev

내 변수에서 찾기가 작동하지 않습니다.

분류에서Dev

mod_rewrite가 내 URL에서 작동하지 않습니다.

분류에서Dev

루프가`onreadystatechange` 내에서 작동하지 않습니다.

분류에서Dev

TextView ellipsize가 RelativeLayout 내에서 작동하지 않습니다.

분류에서Dev

$ scope가 내 angularjs 앱에서 작동하지 않습니다.

분류에서Dev

serialize ()가 내 양식에서 작동하지 않습니다.

분류에서Dev

$ 및 내부 $ elemMatch가 Meteor에서 작동하지 않습니다.

분류에서Dev

내 JavaScript가 크롬에서 작동하지 않습니다.

분류에서Dev

Linked in Share가 내 앱에서 작동하지 않습니다.

분류에서Dev

내 MATLAB에서 GPUmat가 작동하지 않습니다.

분류에서Dev

Javascript API가 함수 내에서 작동하지 않습니다.

분류에서Dev

내 VS2013에서 jquery가 작동하지 않습니다.

분류에서Dev

.html 내부 .append가 jquery에서 작동하지 않습니다.

Related 관련 기사

  1. 1

    EditText가 Cardview 내부에있을 때 ImeOption DONE이 작동하지 않습니다.

  2. 2

    setLayouParams가 cardView에서 작동하지 않았습니다.

  3. 3

    strokeColor 및 strokeWidth가 androidx.cardview.widget.CardView android에서 작동하지 않습니다.

  4. 4

    활동이 시작될 때 CardView가 recyclerview 내에 표시되지 않습니까?

  5. 5

    내 활동에서 notifyDataSetChanged가 작동하지 않습니다.

  6. 6

    Recycler View가 Fragment에서 작동하지 않습니다.

  7. 7

    내 html 문서에서 JavaScript가 작동하지 않습니다.

  8. 8

    내 변수에서 찾기가 작동하지 않습니다.

  9. 9

    R Shiny downloadHandler가 flexdashboard 내에서 작동하지 않습니다.

  10. 10

    addEventListener가 함수 내에서 작동하지 않습니다.

  11. 11

    Timer onReceive가 NavigationView 내에서 작동하지 않습니다.

  12. 12

    gcloud auth가 dockerfile 내에서 작동하지 않습니다.

  13. 13

    @Repository 내에서 SpringBoot @Autowire가 작동하지 않습니다.

  14. 14

    현실 내에서 orderBy DESC가 작동하지 않습니다.

  15. 15

    onChange 함수 내에서 setState가 작동하지 않습니다.

  16. 16

    내 Centos 7.3에서 sudo가 작동하지 않습니다.

  17. 17

    내 변수에서 찾기가 작동하지 않습니다.

  18. 18

    mod_rewrite가 내 URL에서 작동하지 않습니다.

  19. 19

    루프가`onreadystatechange` 내에서 작동하지 않습니다.

  20. 20

    TextView ellipsize가 RelativeLayout 내에서 작동하지 않습니다.

  21. 21

    $ scope가 내 angularjs 앱에서 작동하지 않습니다.

  22. 22

    serialize ()가 내 양식에서 작동하지 않습니다.

  23. 23

    $ 및 내부 $ elemMatch가 Meteor에서 작동하지 않습니다.

  24. 24

    내 JavaScript가 크롬에서 작동하지 않습니다.

  25. 25

    Linked in Share가 내 앱에서 작동하지 않습니다.

  26. 26

    내 MATLAB에서 GPUmat가 작동하지 않습니다.

  27. 27

    Javascript API가 함수 내에서 작동하지 않습니다.

  28. 28

    내 VS2013에서 jquery가 작동하지 않습니다.

  29. 29

    .html 내부 .append가 jquery에서 작동하지 않습니다.

뜨겁다태그

보관