Подтвердить что ты не робот

FragmentActivity не может быть разрешено для типа

Я пытаюсь использовать приложение этот блог. Расширяя FragmentActivity, я получаю следующую ошибку:

`FragmentActivity` was not able to resolve.

Мне не хватает какой-либо библиотеки или чего-то еще?

Мой код:

public class Testing_newActivity extends FragmentActivity { // here the FragmentActivity getting error package not found for import
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        if (getResources().getConfiguration().orientation
                == Configuration.ORIENTATION_LANDSCAPE) {
            // If the screen is now in landscape mode, we can show the
            // dialog in-line so we don't need this activity.
            finish();
            return;
        }

        if (savedInstanceState == null) {
            // During initial setup, plug in the details fragment.
            DetailsFragment details = new DetailsFragment();
            details.setArguments(getIntent().getExtras());

            getSupportFragmentManager().beginTransaction().add(
                    android.R.id.content, details).commit();
        }       
    }
}

Файл манифеста Android

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.searce.testingnew"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="11" />

    <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" >
        <activity android:label="@string/app_name" android:name=".Testing_newActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
4b9b3361

Ответ 1

После долгого ожидания этого ответа я разобрался, и я думаю, что многим другим людям потребуется простое решение для этого вопроса.

Предупреждение. Это решение предназначено для пользователя eclipse, который использует Indigo или более низкую версию. Все еще ищут пользователей, которые используют другие IDE для Android.

При расширении FragmentActivity для вашего приложения с версией 2.2 или ниже вы можете загрузить android.supportv4.jar из здесь или вы можете получить это из своего каталога android-sdk ..\android-sdk\extras\android\support\v4 и поместить в свой проект.

Если в вашем проекте нет каталогов lib, создайте каталог libs и вставьте файл android.supportv4.jar в этот каталог.

Из рабочей области проекта eclipse: Выберите project/application, в котором вы хотите использовать. Щелкните правой кнопкой мыши на Project и выберите Properties. В этом выберите Java build path и выберите вкладку Libraries

enter image description here

Теперь нажмите "Добавить банку". Он отобразит текущий список проектов с выбранным текущим проектом.

Разверните это и перейдите в каталог libs и выберите файл android.supportv4.jar, затем нажмите ok. Теперь он отобразится в списке. Remember add the jar file as relative path path not as absolute path, so whenever if you change the directory of your project or open in another machine then will detect automatically for the project directory. Теперь нажмите "ОК", чтобы закрыть диалоговое окно "Свойства".

Вы можете импортировать android.support.v4.app.FragmentActivity;, поместив мышь над FragmentActivity или нажав ctrl + shift + o, чтобы импортировать отсутствующие файлы.

Надеюсь, теперь вы можете получить класс FragmentActivity.

Если вы используете eclipse juno, вам не нужно беспокоиться о загрузке файла поддержки jar. Он будет автоматически помещен в каталог libs и автоматически добавлен в ваш путь к проекту. Если в случае нет, то перейдите через опцию Properties и добавьте ее.

Еще одна вещь. Если вам нужно поддерживать ваше приложение для более низкой версии, тогда создайте с более высокой версией и добавьте эту строку в файл androidmanifest.xml

<uses-sdk
    android:minSdkVersion="3"
    android:targetSdkVersion="15" />

теперь будут поддерживаться версии версий от версии 1.5 до 4.0.1.

Ответ 2

Если вы используете eclipse и windows, вот как вы можете избавиться от этой ошибки.

Right click on your project folder->Build path-> Configure build path-> 
Add External Jars -> select "android-support-v4.jar" file (It'll be located in Android "android-sdk-windows\extras\android\support")
then click OK.

Ответ 3

вам нужно добавить поддержку JAR в поддержку вашего класса, например, в моем случае я добавил android-support-v4.jar, который обычно находится в каталоге {android_home}\extras\android\support\v4. Я использую Windows XP, и в моем случае он находится в C:\Program Files\Android\android-sdk\extras\android\support\v4

Надеюсь, это поможет тому, кто ищет ответ.

Ответ 4

FragmentActivity является частью библиотеки совместимости, а не Android 3.0 sdk. Вам не нужно использовать его, если вы не хотите обратной совместимости.

Не уверен, почему это упоминается здесь, может быть его конкретным классом проекта.

Попробуйте посмотреть образец HCGallery, отправленный с помощью sdk