Я новый разработчик Android и создаю приложение в SDK 28 с minSdkVersion 22.
Используя фрагмент кода из другого приложения, я теперь получаю предупреждение: 'android.content.intent'устарела.
Я нашел некоторые темы, касающиеся использования getIntent () , но я создаю новое намерение в моем случае в RecyclerViewAdapter, чтобы открыть новое действие.
Вы можете проверить мой код или снимок экрана ниже:
package com.example.chris.projectartifact.bb_Items;
import android.content.Context;
import android.content.Intent;
import android.support.v7.widget.CardView;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.example.chris.projectartifact.R;
import java.util.List;
public class ItemRViewAdapter extends RecyclerView.Adapter<ItemRViewAdapter.MyViewHolder> {
private Context mContext;
private List<Items> mData;
public ItemRViewAdapter(Context mContext, List<Items> mData) {
this.mContext = mContext;
this.mData = mData;
}
@Override
public ItemRViewAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view;
LayoutInflater mInflater = LayoutInflater.from(mContext); //TODO what does that?
view = mInflater.inflate(R.layout.layout_cardview_cards,parent,false);
return new ItemRViewAdapter.MyViewHolder(view);
}
public void onBindViewHolder(ItemRViewAdapter.MyViewHolder holder, final int position) {
holder.ivSpell_img.setImageResource(mData.get(position).getItemImage());
holder.tvSpell_title.setText(mData.get(position).getItemTitle());
holder.cardView_spells_id.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// This is where my problem is..!
Intent intent = new Intent(mContext, itemClickable.class);
intent.putExtra("itemName", mData.get(position).getItemTitle());
mContext.startActivity(intent);
}
});
}
@Override
public int getItemCount() {
return mData.size();
}
public static class MyViewHolder extends RecyclerView.ViewHolder{
TextView tvSpell_title;
CardView cardView_spells_id;
ImageView ivSpell_img;
public MyViewHolder(View itemView) {
super(itemView);
tvSpell_title = itemView.findViewById(R.id.tvSpell_title);
ivSpell_img = itemView.findViewById(R.id.ivSpell_img);
cardView_spells_id = itemView.findViewById(R.id.cardView_spells_id);
}
}
}
Снимок экрана:
Может быть, вы можете помочь мне с этим!
Редактировать новый снимок экрана, на котором я исправил элемент «Кликабельная не распознанная проблема».
Спасибо!CG