-2

I created a list of contacts without using the database. now i want to contact the contacts by clicking on the contact icon... please guide me.

public class ItemAdapter extends RecyclerView.Adapter<ItemAdapter.MyViewHolder> {
    List<Item> itemList;
    Context mContext;

    public ItemAdapter(List<Item> itemList, Context mContext) {
        this.itemList = itemList;
        this.mContext = mContext;
    }
    @NonNull
    @Override
    public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {

        View aView = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item,parent,false);

        return new  MyViewHolder(aView);
    }

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

        Item aItem = itemList.get(position);
        holder.aAvatar.setImageResource(aItem.getuAvatar());
        holder.aNumber.setText(aItem.getuNumber());
        holder.aName.setText(aItem.getuName());


      /* holder.aAvatar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String aNumber = (String) v.getTag();
                Intent intent = new Intent(Intent.ACTION_DIAL);
                intent.setData(Uri.parse("tel:" + aNumber));
                mContext.startActivity(intent);
            }
        });*/
    }

    @Override
    public int getItemCount() {
        return itemList.size();
    }


    public class MyViewHolder extends RecyclerView.ViewHolder {

        public ImageView aAvatar;
        public TextView aName;
        public TextView aNumber;
        public LinearLayout aItem;


        public MyViewHolder(@NonNull View itemView) {
            super(itemView);
            aAvatar = itemView.findViewById(R.id.img_avatar);
            aName = itemView.findViewById(R.id.txt_name);
            aNumber = itemView.findViewById(R.id.txt_number);
            aItem = itemView.findViewById(R.id.item_layout);
        }
}
Muthukrishnan Rajendran
  • 11,122
  • 3
  • 31
  • 41
N313
  • 1
  • 1
  • 1
    What is the problem? – Juanje Apr 29 '19 at 08:45
  • If this is what you are asking [How to make a phone call programmatically?](https://stackoverflow.com/questions/4816683/how-to-make-a-phone-call-programmatically). – ADM Apr 29 '19 at 08:47
  • I want to define an onClick() method that the user enters the phone's contact screen and can call it by clicking on any item. I know I need to define a getTag() and use it in the onClick() method, but I do not know what, like parts of code I commented – N313 May 04 '19 at 18:17

1 Answers1

0

Well, I found the answer to the question. The answer is to define the number in the onClick() and use in setData()

 holder.aAvatar.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String aNumber = aItem.getuNumber();
            Intent intent = new Intent(Intent.ACTION_DIAL);
            intent.setData(Uri.parse("tel:" + aNumber));
            mContext.startActivity(intent);
        }
    });
N313
  • 1
  • 1