Java 无法启动活动,显示您是否已声明此活动

Java 无法启动活动,显示您是否已声明此活动,java,android,android-recyclerview,Java,Android,Android Recyclerview,我找不到任何解决方案,有人帮助解决这个问题吗?首先检查您是否在同一个包中声明了这两个活动。如果没有,则在清单文件中用完整的包名声明它 如: mRVFishPrice = (RecyclerView)findViewById(R.id.fishPriceList); mAdapter = new AdapterFish(MainActivity.this, data); mRVFishPrice.setAdapter(mAdapter);

我找不到任何解决方案,有人帮助解决这个问题吗?首先检查您是否在同一个包中声明了这两个活动。如果没有,则在清单文件中用完整的包名声明它

如:

mRVFishPrice = (RecyclerView)findViewById(R.id.fishPriceList);
            mAdapter = new AdapterFish(MainActivity.this, data);
            mRVFishPrice.setAdapter(mAdapter);
            mRVFishPrice.setLayoutManager(new LinearLayoutManager(MainActivity.this));
            mRVFishPrice.setItemAnimator(new DefaultItemAnimator());
            mRVFishPrice.setAdapter(mAdapter);

            mRVFishPrice.addOnItemTouchListener(new RecyclerTouchListener(getApplicationContext(), mRVFishPrice, new RecyclerTouchListener.ClickListener() {
                @Override
                public void onClick(View view, int position) {
                    dch.updateContact(position + 1);

                    try {
                        Intent intent = new Intent(MainActivity.this,DetailsActivity.class);
                        startActivity(intent);;
                    }
                    catch (Exception e){
                        Toast.makeText(MainActivity.this,""+e,Toast.LENGTH_LONG).show();
                    }
                }

                @Override
                public void onLongClick(View view, int position) {

                }
            }));

您有一个输入错误:双
分号

使用以下命令:

 <activity android:name="yourPackage.DetailsActivity" />
在清单中:声明活动类:

 Intent intent = new Intent(MainActivity.this,DetailsActivity.class);
 startActivity(intent);  //remove double semicolon


以及清理生成:转到
生成-->清理项目-->运行

也许您可以通过其包名启动活动

<activity android:name=".DetailsActivity" />
还是你的情况

setClassName(String packageName, String className)

发布错误日志。请提供。如果这不适用于您,请共享您的错误日志DetailsActivity@LeninThat是分号,不是逗号。除了警告之外,它不会引起任何问题。这只是一个空语句。这是同一件事…关于例外情况..op需要发布
logcat
。我只是试图纠正任何似乎错误的东西..呃,不,它们不是同一件事。此外,如果没有足够的信息来完全回答一个问题,你不应该发布答案。而且我们当然不会发布打字错误的答案。这其中有一个明确的原因。
 Intent intent = new Intent(MainActivity.this,DetailsActivity.class);
 startActivity(intent);  //remove double semicolon
<activity android:name=".DetailsActivity" />
setClassName(String packageName, String className)
Intent intent = new Intent();
intent.setClassName("com.acer.syncmysql","com.acer.syncmysql.DetailsActivity"); 
startActivity(intent);