[英]Unable to start new activity using Intent
我正在調用一個活動,還將值從適配器轉移到下一個活動,這些值已轉移但無法啟動該活動,並且也沒有錯誤,只是下一個活動沒有打開
持有人:
public class ContactReadHolder extends RecyclerView.ViewHolder {
TextView contactName, contactPhone;
ImageButton contactCall;
public ContactReadHolder(View itemView) {
super(itemView);
context =itemView.getContext();
contactName = (TextView) itemView.findViewById(R.id.contact_list_name);
contactPhone = (TextView) itemView.findViewById(R.id.contact_list_phone);
contactCall = (ImageButton) itemView.findViewById(R.id.contact_list_call);
}
}
這是我的適配器代碼,我在onBindViewHolder中阻止了列表器,但仍然無法正常工作,而且我也在Holder類中嘗試過
適配器:
public class ContactReadAdapter extends RecyclerView.Adapter<ContactReadAdapter.ContactReadHolder> {
private LayoutInflater layoutInflater;
private List<ContactListModel> contactListModelList;
private Context context;
public ContactReadAdapter(List<ContactListModel> contactListModelList, Context context) {
this.contactListModelList = contactListModelList;
this.context = context;
}
@NonNull
@Override
public ContactReadHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
layoutInflater = LayoutInflater.from(context);
View view = layoutInflater.inflate(R.layout.abc_contact_layout, parent, false);
ContactReadHolder contactReadHolder = new ContactReadHolder(view);
return contactReadHolder;
}
@Override
public void onBindViewHolder(@NonNull final ContactReadHolder holder, int position) {
final TextView contactName, contactPhone;
contactName = holder.contactName;
contactPhone = holder.contactPhone;
contactName.setText(contactListModelList.get(position).getModel_contact_name());
contactPhone.setText(contactListModelList.get(position).getModel_contact_phone());
holder.contactCall.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("duit","clicked ");
Intent intent=new Intent(context,OutgoingCallActivity.class);
String string_contactName=holder.contactName.getText().toString();
String string_contactPhone=holder.contactPhone.getText().toString();
Log.d("duit","clicked " + string_contactName +" "+ string_contactPhone);
intent.putExtra("user_name",string_contactName);
intent.putExtra("calleeNumber", string_contactPhone);
context.startActivity(intent);
}
});
}
@Override
public int getItemCount() {
return contactListModelList.size();
}
嘗試這個
Intent intent=new Intent(v.getContext(),OutgoingCallActivity.class);
// put extra methods
v.getContext().startActivity(intent);
寫下您對onBindViewHolder功能onclicklistener,它會工作。
Intent intent=new Intent(contactName.getContext(),OutgoingCallActivity.class);
String string_contactName=holder.contactName.getText().toString();
String string_contactPhone=holder.contactPhone.getText().toString();
Log.d("duit","clicked " + string_contactName +" "+ string_contactPhone);
intent.putExtra("user_name",string_contactName);
intent.putExtra("calleeNumber", string_contactPhone);
contactName.getContext().startActivity(intent);
要么
Intent intent=new Intent(holder.contactName.getContext(),OutgoingCallActivity.class);
String string_contactName=holder.contactName.getText().toString();
String string_contactPhone=holder.contactPhone.getText().toString();
Log.d("duit","clicked " + string_contactName +" "+ string_contactPhone);
intent.putExtra("user_name",string_contactName);
intent.putExtra("calleeNumber", string_contactPhone);
holder.contactName.getContext().startActivity(intent);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.