Java android.content.res.Resources$NotFoundException:字符串资源ID#0x0

Java android.content.res.Resources$NotFoundException:字符串资源ID#0x0,java,android,xml,listview,Java,Android,Xml,Listview,我正在开发一个Android应用程序,从MySQL数据库读取数据,我遇到了这个错误。我有这样的XML布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_paren

我正在开发一个Android应用程序,从MySQL数据库读取数据,我遇到了这个错误。我有这样的XML布局:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 


        <TextView android:id="@+id/wardNumber" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:layout_marginLeft="3dp" 
            android:text="Ward Number" 
            android:textSize="22dp"/> 


        <TextView android:id="@+id/dateTime" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:layout_below="@id/wardNumber" 
            android:layout_alignParentRight="true" 
            android:layout_marginRight="3dp" 
            android:text="Date-Time" />

        <TextView
            android:id="@+id/name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/dateTime"
            android:layout_alignBottom="@+id/dateTime"
            android:layout_alignLeft="@+id/wardNumber"
            android:layout_marginLeft="3dp" 
            android:text="Name" />

</RelativeLayout> 
我不知道如何修复此错误。

更改

dateTime.setText(app.getTotalDl());

有不同版本的
setText
——一个接受字符串,另一个接受整数资源id。如果传递一个整数,它将尝试查找相应的字符串资源id,但找不到,这是您的错误

我猜
app.gettotall()
返回一个int。您需要特别告诉
setText
将其设置为该int的字符串值

vs

更换

dateTime.setText(app.getTotalDl());


当您尝试在
Edittext
textview
中设置文本时,您 应该只传递字符串格式

dateTime.setText(app.getTotalDl());


settext的计算值是整数,因此它去查看附加到它的资源,但找不到它。您希望设置文本,使其应为字符串,因此通过附加
将整数转换为字符串。ToString
字符串。valueOf(int)
将解决您的问题

你能行。这是一个简单的方法

txtTopicNo.setText(10+"");

如果我们将值设置为
int
,并将其设置为
String
,则会发生错误。PFB我的解决方案

Textview = tv_property_count;
int property_id;
tv_property_count.setText(String.valueOf(property_id));

如果您得到int中的值,那么必须使用string,因为它会抛出错误

以前

  holder.villageName.setText(villageModelList.get(position).getVillageName());
    holder.villageCount.setText(villageModelList.get(position).getPeopleCount());
    holder.peopleCount.setText(villageModelList.get(position).getPeopleCount());
之后


您可以通过添加字符串来解决此错误。valueOf

setText(intresid)甚至没有附加javadoc。他们真的应该给它起一个单独的名字——显然这是一种常见的误用。所以,指定resId会将TextView的文本设置为另一个资源的文本?我已经知道这一点,但我总是忘记这一点,并且总是以这个答案结束。这是可行的,但我认为这不是合适的方法@肯沃尔夫的回答是正确和专业的。
dateTime.setText(app.getTotalDl());
dateTime.setText(String.valueOf(app.getTotalDl()));
txtTopicNo.setText(10+"");
Textview = tv_property_count;
int property_id;
tv_property_count.setText(String.valueOf(property_id));
  holder.villageName.setText(villageModelList.get(position).getVillageName());
    holder.villageCount.setText(villageModelList.get(position).getPeopleCount());
    holder.peopleCount.setText(villageModelList.get(position).getPeopleCount());
  holder.villageName.setText(villageModelList.get(position).getVillageName());
    holder.villageCount.setText(String.valueOf(villageModelList.get(position).getPeopleCount()));
    holder.peopleCount.setText(String.valueOf(villageModelList.get(position).getPeopleCount()));