单击应用程序抽屉上的项目后应用程序停止



我从Github下载的框架有问题。我已经在Android工作室中导入了它,并进行了一些更改,其中包括添加一个可以从应用程序抽屉启动的新活动。我尝试像这样为新活动提供午餐

public void onClick(View v) {
    Intent intent = new Intent(getActivity(), WorkOrderActivity.class);
    startActivity(intent);
}

它可以编译,但是当我单击它时,该应用程序会停止logcat显示:

11-15 09:39:52.681 3852-3874/? E/AndroidRuntime: FATAL EXCEPTION: ModernAsyncTask #1
                                             Process: com.odoo, PID: 3852
                                             java.lang.RuntimeException: An error occurred while executing doInBackground()
                                                 at android.support.v4.content.ModernAsyncTask$3.done(ModernAsyncTask.java:161)
                                                 at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
                                                 at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
                                                 at java.util.concurrent.FutureTask.run(FutureTask.java:242)
                                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
                                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
                                                 at java.lang.Thread.run(Thread.java:841)
                                              Caused by: java.lang.IllegalArgumentException: Cannot bind argument at index 1 because the index is out of range.  The statement has 0 parameters.
                                                 at android.database.sqlite.SQLiteProgram.bind(SQLiteProgram.java:212)
                                                 at android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:166)
                                                 at android.database.sqlite.SQLiteProgram.bindAllArgsAsStrings(SQLiteProgram.java:200)
                                                 at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:47)
                                                 at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1314)
                                                 at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:400)
                                                 at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:294)
                                                 at com.odoo.core.orm.provider.BaseModelProvider.query(BaseModelProvider.java:107)
                                                 at android.content.ContentProvider.query(ContentProvider.java:857)
                                                 at android.content.ContentProvider$Transport.query(ContentProvider.java:200)
                                                 at android.content.ContentResolver.query(ContentResolver.java:461)
                                                 at android.support.v4.content.ContentResolverCompatJellybean.query(ContentResolverCompatJellybean.java:33)
                                                 at android.support.v4.content.ContentResolverCompat$ContentResolverCompatImplJB.query(ContentResolverCompat.java:57)
                                                 at android.support.v4.content.ContentResolverCompat.query(ContentResolverCompat.java:125)
                                                 at android.support.v4.content.CursorLoader.loadInBackground(CursorLoader.java:59)
                                                 at android.support.v4.content.CursorLoader.loadInBackground(CursorLoader.java:37)
                                                 at android.support.v4.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:299)
                                                 at android.support.v4.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
                                                 at android.support.v4.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:45)
                                                 at android.support.v4.content.ModernAsyncTask$2.call(ModernAsyncTask.java:138)
                                                 at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
                                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
                                                 at java.lang.Thread.run(Thread.java:841)

有没有人知道可能出了什么问题.期待您的回复。

此致敬意

如果您使用的是导航抽屉,则应覆盖此方法

@Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.your_view_id) {
            //start your activity here
           }
}

如果您在视图中设置了点击侦听器,那么您应该使用

@Override
 public void onClick(View v) {
  switch (view.getId()){
   case R.id.your_view_id:
    Intent intent = new Intent(getActivity(), WorkOrderActivity.class);
    startActivity(intent);
    break;
 }
}

相关内容

最新更新