0
我有一个用户信息列表,其中包含每个列表行中的名称,地址和按钮。点击一行中的按钮,它应该导航到另一个活动。没有错误。但应用程序崩溃。 我在打印onclick中的值(名称和地址)时没有问题。问题只在于开始活动。使用Viewholder在列表视图中使用onclick按钮开始活动
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
LayoutInflater inflater = (LayoutInflater) activity
.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_friends, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
final Userinfo userinf = userinf.get(position);
holder.button = (Button) convertView.findViewById(R.id.button);
holder.button.setTag(position);
holder.button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
System.out.println(position);
System.out.println(userinf.getName());
System.out.println(userinf.getAddress());
Intent i=new Intent(mContext,Details.class);
mContext.startActivity(i);
}
});
return convertView;
}
错误日志:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.user, PID: 13057
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference
at android.content.ComponentName.<init>(ComponentName.java:128)
at android.content.Intent.<init>(Intent.java:5328)
at com.example.appko.user.Listviewadapter$1.onClick(Listviewadapter.java:84)
at android.view.View.performClick(View.java:5721)
at android.widget.TextView.performClick(TextView.java:10931)
at android.view.View$PerformClick.run(View.java:22620)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7409)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
列表视图适配器线84
Intent i=new Intent(mContext,Details.class);
Details.class只是测试类打印喜在TextView中
请在这里发表您的错误日志。所以,我们可以帮助更好。 –
发布您的完整适配器代码和错误日志 –
没有崩溃日志无法找到错误。 请粘贴您的崩溃日志。 –