Почему Android не распознает второе действие, когда я запускаю его с намерением? - PullRequest
0 голосов
/ 23 января 2019

У меня появляется странная ошибка, когда слушатель щелчка пытается открыть новое действие:

android.content.ActivityNotFoundException: Невозможно найти явный класс активности {com.example.room2n.practice8/com.example.room2n.practice8.NewDbaActivity};Вы объявили об этом в своем файле AndroidManifest.xml?

Это странно, потому что я не могу указать на проблему в моем манифесте:

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <activity android:name=".MainActivity"
        android:theme="@style/AppTheme.NoActionBar"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".NewDbaActivity">
    </activity>
</application>

Кроме того, это функция запуска:

 public void onClick(View view) {
            Intent intent = new Intent(MainActivity.this, NewDbaActivity.class);
            startActivity(intent);
        }

1 Ответ

0 голосов
/ 23 января 2019

Вы должны объявить вновь созданную активность в файле AndroidManifest.xml.Например, как указано выше:

<activity
            android:name=".NewDbaActivity"
            android:label="@string/title_yourTitle"
            android:theme="@style/AppTheme.NoActionBar"/> 

Что-то, что я вижу, вы уже сделали.Я бы посоветовал взглянуть на путь второго действия , это внутри пакета ?так как я могу читать что-то вроде: practice8 .. если так, то вам нужно указать это как .practice8.NewDbaActivity.

PS: Я видел ваше редактирование вопроса, и это вызывает проблему.Вы изменили и испортили их, отредактировав строки.Так что следуйте предыдущему пути на основе имени пакета.

...