FragmentActivity 无法解析为类型
Posted
技术标签:
【中文标题】FragmentActivity 无法解析为类型【英文标题】:FragmentActivity cannot be resolved to a type 【发布时间】:2011-12-31 04:22:06 【问题描述】:我正在尝试来自this blog 的应用程序。在扩展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();
安卓清单文件
<?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>
【问题讨论】:
检查你的导入并确保所有需要的都在那里。 (如果您发布一些代码/错误日志/其他内容会更容易提供帮助)。 【参考方案1】:等待这个答案很久之后,我已经整理了一些东西,我认为很多其他人需要一个简单的解决方案来解决这个问题。
警告:此解决方案适用于使用 Indigo 或更低版本的 eclipse 用户。仍在寻找使用其他 Android IDE 的解决方案用户。
当为您的应用程序使用 2.2 或更低版本扩展 FragmentActivity
时,您可以从 here 下载 android.supportv4.jar 或者您可以从您的 android-sdk 目录 ..\android-sdk\extras\android\support\v4
获取它并放入您的项目。
如果您的项目中没有目录libs,则创建libs目录并将android.supportv4.jar文件粘贴到该目录中。
来自 Eclipse 项目工作区:
选择您要在其中使用的project/application
。右键单击Project
并选择Properties
选项。在此选择Java build path
并选择标签Libraries
现在点击添加罐子。它将显示当前项目列表以及选定的当前项目。
展开这个并进入 libs 目录并选择 android.supportv4.jar 文件然后单击确定。它现在将显示在列表框中。 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.
现在点击确定关闭属性对话框。
您可以通过将鼠标放在 FragmentActivity 上或按 ctrl+shift+o 导入丢失的文件来导入 android.support.v4.app.FragmentActivity;
。
希望你现在能拿到 FragmentActivity 类。
如果您使用的是 eclipse juno,则无需担心下载支持 jar 文件。它将自动放入 libs 目录并自动添加到您的项目路径中。如果没有,请通过Properties
选项并添加它。
还有一件事如果您需要支持较低版本的应用程序,则使用较高版本构建并将您的这一行添加到您的 androidmanifest.xml 文件中
<uses-sdk
android:minSdkVersion="3"
android:targetSdkVersion="15" />
这现在将支持 1.5 到 4.0.1 版本的设备。
【讨论】:
这对我有帮助!但是我按下了 Add External JARs...【参考方案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.
【讨论】:
那么WatchActivity怎么办无法解析为类型【参考方案3】:您必须将外部 android 支持 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。 除非您想要向后兼容,否则您不需要使用它。
不知道为什么这里提到这可能是它的项目特定类。
尝试查看随 sdk 提供的 HCGallery 示例
【讨论】:
那么哪个库适合这个?以上是关于FragmentActivity 无法解析为类型的主要内容,如果未能解决你的问题,请参考以下文章
无法解析方法 getSupportFragmentManager() 或 ((FragmentActivity)activity)getSupportFragmentManager()
Android Studio 无法解析 fragmentActivity 和 ViewPager 导入
无法解析扩展 FragmentActivity 的类中的方法 getActivity()