Поддержка Android SDK Fragment - PullRequest
       14

Поддержка Android SDK Fragment

4 голосов
/ 15 января 2012

Хорошо, я только начинаю изучать программирование на Android, и я следую учебному пособию по Android "TabActivity": http://developer.android.com/reference/android/app/TabActivity.html. Все работает, но не может найти некоторые из классов поддержки, см. Код ниже, который генерирует ошибки.

    mTabManager.addTab(mTabHost.newTabSpec("simple").setIndicator("Simple"),
            FragmentStackSupport.CountingFragment.class, null);
    mTabManager.addTab(mTabHost.newTabSpec("contacts").setIndicator("Contacts"),
            LoaderCursorSupport.CursorLoaderListFragment.class, null);
    mTabManager.addTab(mTabHost.newTabSpec("custom").setIndicator("Custom"), 
            LoaderCustomSupport.AppListFragment.class, null);
    mTabManager.addTab(mTabHost.newTabSpec("throttle").setIndicator("Throttle"),
            LoaderThrottleSupport.ThrottledLoaderListFragment.class,null);

Для FragmentStackSupport / LoaderCursorSupport / LoaderCustomSupport / LoaderThrottleSupport говорится, что все они не могут быть преобразованы в тип. Я добавил последнюю библиотеку поддержки в папку в корневом каталоге с именем «libs», а также скопировал ее в каталог «C: / Eclipse / v4 /». Мои файлы импорта:

    import java.util.HashMap;
    import android.R;
    import android.content.Context;
    import android.os.Bundle;
    import android.support.v4.app.Fragment;
    import android.support.v4.app.FragmentActivity;
    import android.support.v4.app.FragmentTransaction;
    import android.support.v4.app.FragmentPagerAdapter;
    import android.view.View;
    import android.widget.TabHost;
    import cowdawg.hello_tab.namespace.R.layout;
    import cowdawg.hello_tab.namespace.R.id;

Может кто-нибудь предложить мне несколько советов, как решить эту проблему, спасибо:).

Ответы [ 5 ]

10 голосов
/ 15 января 2012

Вероятно, потому, что следующие классы не являются частью стандартного API Android (или библиотеки поддержки), но существуют только в демонстрационном коде демонстрационных примеров поддержки:

FragmentStackSupport.CountingFragment
LoaderCursorSupport.CursorLoaderListFragment
LoaderCustomSupport.AppListFragment
LoaderThrottleSupport.ThrottledLoaderListFragment

Вам потребуетсядобавьте эти классы в ваш собственный проект, чтобы иметь возможность использовать их. Здесь вы можете найти исходные файлы в подразделе «Файлы».

6 голосов
/ 28 января 2013

В Eclipse IDE: выберите свой проект, а затем щелкните правой кнопкой мыши проект -> Инструменты Android -> Добавить библиотеку поддержки.

Необходимая библиотека поддержки будет добавлена ​​в путь сборки проекта.Вы найдете эту библиотеку jar в Java Build Path -> вкладка Libraries -> Android Dependencies.

Приятного изучения!

2 голосов
/ 15 января 2012

Вы добавили библиотеку в путь сборки?Щелкните правой кнопкой мыши по банке в eclipse -> Build Path -> Add to Build Path.

enter image description here

1 голос
/ 15 января 2012

Попробуйте добавить, щелкнув правой кнопкой мыши на проекте и открыв окно свойств

enter image description here

0 голосов
/ 26 февраля 2013

Вместо этих пропущенных классов вы можете создать свой собственный, создав подкласс Fragment class (или его подклассы, такие как DialogFragment, ListFragment и т. Д.).Более подробная информация предоставляется Android здесь .

...