标签: recycler-adapter

在recylerview中的NPE oncreateviewholder android

这应该是一项简单的工作.我刚从api调用中获取数据,并希望在recyclerview中填充它.我做过这样的事情就像我猜的每个人一样.但是在这里,当视图项布局在适配器类中膨胀时,我得到空指针异常.我不知道如何解决它.

我的适配器类是

public class RecipeAdapter extends RecyclerView.Adapter<RecipeAdapter.ViewHolder> {

private List<RecipeByIngredients> recipeByIngredients;
private Context mContext;

public RecipeAdapter(List<RecipeByIngredients> recipeByIngredients, Context mContext) {
    this.recipeByIngredients = recipeByIngredients;
    this.mContext = mContext;
}


@Override
public RecipeAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    final LayoutInflater mInflater = LayoutInflater.from(parent.getContext());
    final View itemView = mInflater.inflate(R.layout.recipe_item_layout, parent, false);

    return new ViewHolder(itemView);
}

@Override
public void onBindViewHolder(ViewHolder holder, int position) {

    RecipeByIngredients recipeByIngredient = recipeByIngredients.get(position);

    holder.tvUsedIngredients.setText(recipeByIngredient.getUsedIngredientCount() + " " + "ingredients used");
    holder.tvMissedIngredients.setText(recipeByIngredient.getMissedIngredientCount() + " " + "missed ingredients");

    Glide.with(mContext)
            .load(recipeByIngredient.getImage())
            .placeholder(R.drawable.recipe_placeholder) …
Run Code Online (Sandbox Code Playgroud)

java android nullpointerexception recycler-adapter android-recyclerview

0
推荐指数
1
解决办法
436
查看次数

在RecyclerView项目中的每个按钮上单击

如何获得RecyclerView项目内单击按钮的位置

这是我的onBindViewHolder:

  public void onBindViewHolder(MyViewHolder holder, int position) {
    Masar masar=masrList.get(position);
    holder.masarName.setText(masar.getMasarTitle());
    holder.masarDesc.setText(masar.getMasarDescreption());

    //How to get the Position 

    holder.masarImg.setImageResource(masar.getMasarImg());

    holder.mapBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v ) {
            //if you need position, just use recycleViewHolder.getAdapterPosition();
            Intent intent = new Intent(v.getContext(), MapsActivity.class);
            mContext.startActivity(intent);
        }
    });

}
Run Code Online (Sandbox Code Playgroud)

android android-adapter onclicklistener recycler-adapter android-recyclerview

0
推荐指数
1
解决办法
5646
查看次数

不推荐使用setBackgroundColor

我在RecyclerAdapter的onBindViewHolder中有一个视图项.由于不推荐使用setBackgroundColor,我该怎么做呢?

holder.itemView.setBackgroundColor(mContext.getResources().getColor(bgColor));
Run Code Online (Sandbox Code Playgroud)

java android recycler-adapter android-recyclerview

-1
推荐指数
1
解决办法
817
查看次数

onBindViewHolder() recieves ''on a null object reference''

I am trying to run my app using Adapters and I am getting this error while doing that:

Mentioning that there are 3 adapters: ReviewsAdapter, StandupWithKey and VideoAdapter.

05-07 20:16:57.707 5326-5326/com.example.sefi.authenticationproject E/ReviewsAdapter: onBindViewHolder() >> 0 05-07 20:16:57.708 5326-5326/com.example.sefi.authenticationproject E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.sefi.authenticationproject, PID: 5326 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference at com.example.sefi.authenticationproject.adapter.ReviewsAdapter.onBindViewHolder(ReviewsAdapter.java:48) at com.example.sefi.authenticationproject.adapter.ReviewsAdapter.onBindViewHolder(ReviewsAdapter.java:18) at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6482) at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6515) at android.support.v7.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5458) at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5724) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5563) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5559) at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2229) at …

java android android-studio recycler-adapter android-recyclerview

-1
推荐指数
1
解决办法
876
查看次数

ReyclerView无法正常工作

我正在尝试在recyclerview上显示我的模型列表.但由于某种原因,它没有显示任何东西.我从FirebaseDatabase获取列表项并将所有数据保存在"videoList"上.然后我想呈现我收到的数据,但它没有显示任何内容.

请告诉我我做错了什么.

  public class MyPlayListFragment extends Fragment {
    private FirebaseDatabase refToVideos;
    private FirebaseUser currentUser;
    private ArrayList<Video> videosList;
    private VideoViewAdapter adapter;
    private RecyclerView rvVideos;


public MyPlayListFragment() {
    // Required empty public constructor
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View v = inflater.inflate(R.layout.fragment_my_play_list, container, false);
    rvVideos = (RecyclerView)v.findViewById(R.id.rvVideos);

    return v;
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    videosList = new ArrayList<>();
    refToVideos = FirebaseDatabase.getInstance();
    currentUser …
Run Code Online (Sandbox Code Playgroud)

android recycler-adapter android-recyclerview

-5
推荐指数
1
解决办法
276
查看次数