不同的活动意图-相同的列表

时间:2019-06-15 13:42:13

标签: android android-intent

我有一个数组列表值。在Recyclerview中,此列表为所有项目打开相同的活动。我希望在其他位置(少量物品)开展不同的活动。有任何想法吗? 在我的代码中:=> DetaliiActivity。例如,我希望项目“ Blaa”开展其他活动

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

private Context context;
private List<Domenii> listaDomenii;

public DomeniiAdapter(Context context, List<Domenii> listaDomenii) {
    this.listaDomenii = listaDomenii;
    this.context = context;
}

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

    return new MyViewHolder(itemView);
}

@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    final Domenii domeniu = listaDomenii.get(position);
    holder.nume.setText(domeniu.getNume());
    holder.imagine.setImageResource(domeniu.getImagine());

    holder.itemView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(context, DetaliiActivity.class);
            intent.putExtra("cheie", domeniu);

            context.startActivity(intent);

        }
    });
}

public class MyViewHolder extends RecyclerView.ViewHolder {
    public TextView nume;
    public ImageView imagine;

    public MyViewHolder(View view) {
        super(view);
        nume = view.findViewById(R.id.domeniiNume);
        imagine = view.findViewById(R.id.domeniiImage);
    }
}

@Override
public int getItemCount() {
    if (listaDomenii != null) {
        return listaDomenii.size();
    } else {
        return 0;
        }
    }
}

public class Domenii implements Serializable {

private String nume;
private int imagine;
private List<Detalii> details;

public Domenii(String nume, int imagine) {
    this.nume = nume;
    this.imagine = imagine;
}

public String getNume() {
    return nume;
}

public void setNume(String nume) {
    this.nume = nume;
}

public int getImagine() {
    return imagine;
}

public void setImagine(int imagine) {
    this.imagine = imagine;
}

public List<Detalii> getDetails() {
    return details;
}

public void setDetails(List<Detalii> details) {
    this.details = details;
    }
}


<!--DOMENII-->

<string-array name="nume_domenii">
    <item>Filme</item>
    <item>Turism</item>
    <item>Transport</item>
    <item>Cumparaturi</item>
    <item>Jocuri</item>
    <item>Blaa</item>
    <item>Cucu</item>

1 个答案:

答案 0 :(得分:0)

您可以这样做: 在您的点击监听器内部执行此条件

  data <- reactivePoll(1000, session,
    checkFunc = function() {
      IMG <- paste0("C:/Windows/Web/Wallpaper/Theme2/img",input$SN,".jpg")
      if (file.exists(IMG))
        file.info(IMG)$mtime[1]
      else
        ""
    },
    valueFunc = function() {
      paste0("C:/Windows/Web/Wallpaper/Theme2/img",input$SN,".jpg")
    }
  )

  output$Display <- renderImage({
    list(src = data())
  })