[英]Click recyclerView new activity Error Attempt to invoke virtual method
I need help, for onclick on recyclerview and open new actity, im clicked in item list close app and logcat error is: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference I need help, for onclick on recyclerview and open new actity, im clicked in item list close app and logcat error is: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName( )' 在 null object 参考
My code:我的代码:
@Override
public void onBindViewHolder(final estadoView estadoView, final int i) {
final Estado estado = estadoList.get(i);
estadoView.txtnombreMostrar.setText(estado.getStateName());
estadoView.txtnombreMostrar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(context, Invernadero.class);
context.startActivity(intent);
} });
}
And my public class is:而我的公开 class 是:
public class estadoView extends RecyclerView.ViewHolder {
private TextView txtnombreMostrar;
RelativeLayout parentLayout;
public estadoView(@NonNull View itemView) {
super(itemView);
txtnombreMostrar = itemView.findViewById(R.id.txtNombreMostrar);
}
}
whats is the problem?有什么问题? Im search in web, in forums, but im not solve my problem
我在论坛中搜索 web,但我没有解决我的问题
It seems that you've a context issue, but as you didn't provide how did you get the context, for now replace it in your view listener with v.getContext()
as below:您似乎遇到了上下文问题,但由于您没有提供如何获取上下文,因此现在在您的视图侦听器中将其替换为
v.getContext()
,如下所示:
@Override
public void onBindViewHolder(final estadoView estadoView, final int i) {
final Estado estado = estadoList.get(i);
estadoView.txtnombreMostrar.setText(estado.getStateName());
estadoView.txtnombreMostrar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(v.getContext(), Invernadero.class);
v.getContext().startActivity(intent);
} });
}
check your context when start a new Intent, where you get the context, maybe the context still null or not assigned yet在开始一个新的 Intent 时检查你的上下文,你在哪里得到上下文,也许上下文仍然是 null 或尚未分配
java.lang.String android.content.Context.getPackageName()
i'm sure the context is null我确定上下文是 null
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.