Android Studio 无法解析 fragmentActivity 和 ViewPager 导入

Posted

技术标签:

【中文标题】Android Studio 无法解析 fragmentActivity 和 ViewPager 导入【英文标题】:Android Studio Can't resolve fragmentActivity and ViewPager imports 【发布时间】:2015-01-16 16:39:18 【问题描述】:

我遵循开发可滑动标签的教程。当我导入时:

import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;

Android Studio 显示我无法解析符号“ViewPager”和“FragmentActivity”。 如何解决这个问题?谢谢。

下面是我项目的全部代码。

import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;

public class MainActivity extends FragmentActivity implements
    ActionBar.TabListener 

private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;
// Tab titles
private String[] tabs =  "Top Rated", "Games", "Movies" ;

@Override
protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // Initilization
    viewPager = (ViewPager) findViewById(R.id.pager);
    actionBar = getActionBar();
    mAdapter = new TabsPagerAdapter(getSupportFragmentManager());

    viewPager.setAdapter(mAdapter);
    actionBar.setHomeButtonEnabled(false);
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    // Adding Tabs
    for (String tab_name : tabs) 
        actionBar.addTab(actionBar.newTab().setText(tab_name)
                .setTabListener(this));
    

    /**
     * on swiping the viewpager make respective tab selected
     * */
    viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() 

        @Override
        public void onPageSelected(int position) 
            // on changing the page
            // make respected tab selected
            actionBar.setSelectedNavigationItem(position);
        

        @Override
        public void onPageScrolled(int arg0, float arg1, int arg2) 
        

        @Override
        public void onPageScrollStateChanged(int arg0) 
        
    );


@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) 


@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) 
    // on tab selected
    // show respected fragment view
    viewPager.setCurrentItem(tab.getPosition());


@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) 



【问题讨论】:

您是否从 SDK Manger 添加了支持库? 已添加。 android 支持库 Rev 21.0.2。 现在发生了什么? 导入android.support.v4.app.FragmentPagerAdapter时无法解析fragmentPagerAdapter; ***.com/a/36805973/563735 【参考方案1】:
    确保您已使用 SDK 管理器下载了 Android 支持存储库。 为您的应用打开 build.gradle 文件。

    将支持库添加到依赖项部分。例如,要添加 v4 支持库,请添加以下行:

    依赖 ... 编译“com.android.support:support-v4:18.0.+”

【讨论】:

我确定我已经下载了 android 支持库和 android 支持库。我还添加了这一行: compile "com.android.support:support-4:18.0.+" 但 android studio 仍然不断要求我去安装 android 支持存储库。 如果您的网络被任何代理阻止,Gradle 将无法下载 jar。如果是这样,您可以在离线模式下工作。将 jar 添加到模块中的 libs 文件夹中,右键单击 jar 并选择“添加为库”选项。【参考方案2】:

我已经解决了。我安装了所有东西,但没有将外部库导入到我的库中。它不是在创建新项目期间自动安装的。所以我只是打开了项目结构并导入了依赖项->添加support-v4库。

顺便说一句,谢谢你们帮了我很多忙并将建议发布给我。

【讨论】:

【参考方案3】:
    点击文件,然后选择项目结构 选择模块“app” 点击“依赖”标签 点击+号,选择Library Dependencies 根据需要选择 support-v4 或其他库 好的

【讨论】:

【参考方案4】:

要将 Android 支持库添加到现有的 Android 项目:

右键单击您的项目 选择安卓工具 选择添加支持库。

通常即使通过SDK管理器添加后,您也必须在此过程中单独添加。这将设置所需的jar文件。

【讨论】:

【参考方案5】:

如果您已经安装并配置了所有工具, 尝试在 IDE 菜单中这样做:Build-> Clean Project

【讨论】:

【参考方案6】:

按照 SubinM 的帖子中所述进行操作

之后,更改所有 XML 文件

来自

【讨论】:

以上是关于Android Studio 无法解析 fragmentActivity 和 ViewPager 导入的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio GeoDataClient 无法解析

无法解析 Android Studio 中的依赖项

Android Studio 无法解析符号“TabLayout”

Android Studio:无法解析符号 R [重复]

无法解析 Android Studio 上的符号“属性”

Android Studio 突然无法解析符号