![](/img/trans.png)
[英]Sudden errors in Resources.java, Context.java and other android utility classes
[英]Annotations and methods can not be recognized in Resources.java
我的Android应用引发了ResourcesNotFoundFoundException。
09-05 21:19:28.456 23667-23667/andi.chroeappclient W/ResourceType: No package identifier when getting value for resource number 0x00000001
09-05 21:19:28.456 23667-23667/andi.chroeappclient D/AndroidRuntime: Shutting down VM
09-05 21:19:28.461 23667-23667/andi.chroeappclient E/AndroidRuntime: FATAL EXCEPTION: main
Process: andi.chroeappclient, PID: 23667
android.content.res.Resources$NotFoundException: String resource ID #0x1
at android.content.res.Resources.getText(Resources.java:339)
at android.widget.TextView.setText(TextView.java:5496)
at andi.chroeappclient.TasksArrayAdapter.getView(TasksArrayAdapter.java:40)
at android.widget.AbsListView.obtainView(AbsListView.java:2365)
...
因此,我单击了Resources.java:339并看到了 。
TasksArrayAdapter.java:40是viewHolder.textViewPoints.setText(task.getPoints());
我尝试了Invalid Caches / Restard
, Sync Project with Gradle Files
以及Clean and Rebuild Project
但是都没有帮助。
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import java.util.ArrayList;
public class TasksArrayAdapter extends ArrayAdapter<Task> {
public TasksArrayAdapter(@NonNull Context context, int resource, ArrayList<Task> arrayList) {
super(context, resource);
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
Task task = getItem(position);
ViewHolder viewHolder;
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = LayoutInflater.from(getContext())
.inflate(R.layout.element, parent, false);
viewHolder.textViewName = convertView.findViewById(R.id.textViewName);
viewHolder.textViewPoints = convertView.findViewById(R.id.textViewPoints);
viewHolder.textViewCycle = convertView.findViewById(R.id.textViewCycle);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.textViewName.setText(task.getName());
viewHolder.textViewPoints.setText(task.getPoints());
viewHolder.textViewCycle.setText(task.getCycle());
return convertView;
}
private static class ViewHolder {
TextView textViewName;
TextView textViewPoints;
TextView textViewCycle;
}
}
只需更改此行
viewHolder.textViewPoints.setText(task.getPoints());
至
viewHolder.textViewPoints.setText(String.valueOf(task.getPoints()));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.