Java 我的应用程序freez和show错误您的内容必须具有listview

Java 我的应用程序freez和show错误您的内容必须具有listview,java,android,Java,Android,当我点击分类我的应用程序freez并显示错误时,我想从sqllite数据库检索数据。您的内容必须具有id为R.id的listView。列表这里是我的logcat报告 首先,我单击category report按钮,它在列表视图中显示listview,我单击category name,比如“Food”,然后将Food字符串文本按意图传递给另一个活动,在该活动中保存到游标,并将参数传递给要调用的方法 12-28 18:48:26.168: E/AndroidRuntime(325): FATAL E

当我点击分类我的应用程序freez并显示错误时,我想从sqllite数据库检索数据。您的内容必须具有id为R.id的listView。列表这里是我的logcat报告 首先,我单击category report按钮,它在列表视图中显示listview,我单击category name,比如“Food”,然后将Food字符串文本按意图传递给另一个活动,在该活动中保存到游标,并将参数传递给要调用的方法

12-28 18:48:26.168: E/AndroidRuntime(325): FATAL EXCEPTION: main
12-28 18:48:26.168: E/AndroidRuntime(325): java.lang.RuntimeException: Unable to start 
activity ComponentInfo{com.exmang/com.exmang.ShowCat}: 
java.lang.RuntimeException: Your content must have a ListView whose id attribute is  
'android.R.id.list'
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
12-28 18:48:26.168: E/AndroidRuntime(325):  at   
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
android.app.ActivityThread.access$2300(ActivityThread.java:125)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
android.os.Handler.dispatchMessage(Handler.java:99)
12-28 18:48:26.168: E/AndroidRuntime(325):  at android.os.Looper.loop(Looper.java:123)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
android.app.ActivityThread.main(ActivityThread.java:4627)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
java.lang.reflect.Method.invokeNative(Native Method)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
java.lang.reflect.Method.invoke(Method.java:521)
12-28 18:48:26.168: E/AndroidRuntime(325):  at  
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
这是我的数据库表声明

public static final String EX_RowID = "_id";
public static final String EX_Cattype = "Ecattype";
public static final String EX_Date = "Ecdate";
public static final String EX_Price = "Ecprice";
public static final String EX_Type = "itype";

private static final String DATABASE_NAME = "DataBase";
private static final int DATABASE_VERSION = 1 ;
private static final String Food_TABLE = "FoodTable";

private DbHelper ourhelper;
private final Context ourcontext;
private SQLiteDatabase ourdatabase;

private static class DbHelper extends SQLiteOpenHelper{

    public DbHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
        // TODO Auto-generated constructor stub
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
        db.execSQL("CREATE TABLE " + Food_TABLE +"(" +
                EX_RowID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
                EX_Cattype + " TEXT NOT NULL, " +
                EX_Date + " TEXT NOT NULL," +
                EX_Price + " INTEGER NOT NULL," +
                EX_Type + " TEXT NOT NULL UNIQUE);"
                );
下面是调用字符串值的方法,该字符串值包含与所需列相等的每个类别的文本

//return category wise data in listview
public Cursor CategExpData(String value) {
// TODO Auto-generated method stub
String[] columns = new String[] {EX_RowID,EX_Cattype, EX_Date, EX_Price, EX_Type };
Cursor c= ourdatabase.query(Food_TABLE, columns, EX_Cattype + "='" + value + "'",  
null, null, null, null);
if (c != null) {

       c.moveToFirst();

      }
return c;

}
这是当我点击listview项时出现的listview。列表视图的所需文本项被传递给另一个活动,当

public class Catrpt extends ListActivity {

String myexpenselist[] = {"Food", "Medical" ,"Education",  
"Shopping","Entertainment",
        "Bills", "Automobiles", "Travel"};
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setListAdapter(new ArrayAdapter<String>(Catrpt.this, 
 android.R.layout.simple_list_item_1, myexpenselist));

}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    // TODO Auto-generated method stub
    Object o = l.getItemAtPosition(position);
    String str_text = o.toString();
    //Log.i("lsr", str_text.toString());
    Intent intent = new Intent(Catrpt.this, ShowCat.class);
    intent.putExtra("StrValue", str_text);
    Log.i("lsr2", str_text.toString());
    startActivity(intent);
}


 }
下面是在listview中显示数据的myelst xml文件

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

<ListView
    android:id="@+id/listView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
</ListView>
</LinearLayout>

下面是在listView中显示数据时使用的emtolst xml文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/foodtablelayout"
android:orientation="vertical" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:paddingRight="90dp"
    android:text="ID: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

  <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView1"
    android:layout_below="@+id/textView1"
    android:paddingRight="30dp"
    android:text="Category Type: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

  <TextView
      android:id="@+id/textView3"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_alignLeft="@+id/textView2"
      android:layout_alignRight="@+id/textView2"
      android:layout_below="@+id/textView2"
      android:paddingRight="72dp"
      android:text="Date: "
      android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView3"
    android:layout_alignRight="@+id/textView3"
    android:layout_below="@+id/textView3"
    android:paddingRight="95dp"
    android:text="Price: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView4"
    android:layout_below="@+id/textView4"
    android:layout_toLeftOf="@+id/txtexprice"
    android:paddingRight="60dp"
    android:text="Item Type: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/txtexid"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView1"
    android:layout_alignBottom="@+id/textView1"
    android:layout_toRightOf="@+id/textView1"
    android:text="TextView" />

 <TextView
    android:id="@+id/txtexcat"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView2"
    android:layout_alignBottom="@+id/textView2"
    android:layout_toRightOf="@+id/textView2"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexdate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView3"
    android:layout_alignBottom="@+id/textView3"
    android:layout_toRightOf="@+id/textView3"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexprice"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView4"
    android:layout_alignBottom="@+id/textView4"
    android:layout_toRightOf="@+id/textView4"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexitype"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView5"
    android:layout_alignBottom="@+id/textView5"
    android:layout_toRightOf="@+id/textView5"
    android:text="TextView" />

</RelativeLayout>


在xml文件中,将ListView的id更改为“@android:id/list”。该计划将很好地运作。希望有帮助。:)

那么,按照错误所说的做,将您的listview id更改为android.r.id.list您在Catrpt活动中使用的xml?在这个类中,没有xml文件,我通过java代码默认创建listview仍然存在相同的错误sir抱歉,我更改了它,但仍然存在相同的错误……谢谢先生,现在可以工作了,我完全更改了……但现在我如何接受您当我想接受它的时候,它需要声誉\
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/foodtablelayout"
android:orientation="vertical" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:paddingRight="90dp"
    android:text="ID: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

  <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView1"
    android:layout_below="@+id/textView1"
    android:paddingRight="30dp"
    android:text="Category Type: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

  <TextView
      android:id="@+id/textView3"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_alignLeft="@+id/textView2"
      android:layout_alignRight="@+id/textView2"
      android:layout_below="@+id/textView2"
      android:paddingRight="72dp"
      android:text="Date: "
      android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView3"
    android:layout_alignRight="@+id/textView3"
    android:layout_below="@+id/textView3"
    android:paddingRight="95dp"
    android:text="Price: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView4"
    android:layout_below="@+id/textView4"
    android:layout_toLeftOf="@+id/txtexprice"
    android:paddingRight="60dp"
    android:text="Item Type: "
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/txtexid"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView1"
    android:layout_alignBottom="@+id/textView1"
    android:layout_toRightOf="@+id/textView1"
    android:text="TextView" />

 <TextView
    android:id="@+id/txtexcat"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView2"
    android:layout_alignBottom="@+id/textView2"
    android:layout_toRightOf="@+id/textView2"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexdate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView3"
    android:layout_alignBottom="@+id/textView3"
    android:layout_toRightOf="@+id/textView3"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexprice"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView4"
    android:layout_alignBottom="@+id/textView4"
    android:layout_toRightOf="@+id/textView4"
    android:text="TextView" />

<TextView
    android:id="@+id/txtexitype"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView5"
    android:layout_alignBottom="@+id/textView5"
    android:layout_toRightOf="@+id/textView5"
    android:text="TextView" />

</RelativeLayout>