2017-12-09 31 views
0

私はrecycler viewを実装しようとしていました。私はviewHolderを使用することができません。解決策を見つけてください。それはあなたのために参考になりますので、事前に感謝シンボルを解決できませんViewHolder

Screenshot

+0

あなたのコードを質問 –

+1

で共有してくださいようこそ、スタックオーバーフロー。 [良い質問をするにはどうすればいいですか?](https://stackoverflow.com/help/how-to-ask)と[ここではどのような話題がありますか?](https://stackoverflow.com/help)をお読みください。/on-topic)。 **研究、何かを試し、あなたのコードを追加し、あなたの問題を指摘** – pirho

+0

**あなたのアダプタクラスの** 'viewHolder' **のクラスを作成する必要があります –

答えて

0

あなたは、このように希望を試すことができます。

public class YourAdapter extends RecyclerView.Adapter<YourAdapter.MyViewHolder> { 

      private List<Sring> myList; 

      public class MyViewHolder extends RecyclerView.ViewHolder { 
       public TextView title, year, genre; 

       public MyViewHolder(View view) { 
        super(view); 
        title = (TextView) view.findViewById(R.id.title); 
        genre = (TextView) view.findViewById(R.id.genre); 
        year = (TextView) view.findViewById(R.id.year); 
       } 
      } 


      public YourAdapter(List<String> list) { 
       this.myList = list; 
      } 

      @Override 
      public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
       View itemView = LayoutInflater.from(parent.getContext()) 
         .inflate(R.layout.list_row, parent, false); 

       return new MyViewHolder(itemView); 
      } 

      @Override 
      public void onBindViewHolder(MyViewHolder holder, int position) { 
       Movie movie = myList.get(position); 
       holder.title.setText(myList.get(position).getTitle()); 

      } 

      @Override 
      public int getItemCount() { 
       return myList.size(); 
      } 
     } 
+0

この例を参照すると、明確な理解のリンクが得られます。https://www.androidhive.info/2016/01/android-working-with-recycler-view/ – Dilip

0

あなたは怒鳴るようなあなたのアダプタクラスの内側に新しいクラスを作成する必要があります。

public class viewHolder extends RecyclerView.ViewHolder { 

    public TextView text; 
    public ImageView imageView; 


    public viewHolder(View v) { 
     super(v); 
     text = (TextView) v.findViewById(R.id.text); 
     imageView = (ImageView) v.findViewById(R.id.icon); 

    } 
} 
0

がちょうどViewHolder代わりRecyclerView.Adapter.ViewHolderのを使用してみてください:

@Override 
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    return null; 
} 

... 

そして、あなたが持っていることを確認してくださいアダプタクラス内のViewHolderクラス:

public class ViewHolder extends RecyclerView.ViewHolder { 
    public ViewHolder(View v) { 
     super(v); 
    } 
} 

希望します。

関連する問題