在创建任何新的android项目之后,Eclipse会自动创建一个"appcompat_v7"项目,而没有/ src下的任何文件.我不知道Eclipse是如何或为什么创建这个项目的.我也遇到了一个奇怪的错误.
如您所见,项目中存在AndroidManifest.xml!
编辑1:清理项目后,奇怪的错误消失了,但我仍然想知道为什么appcompat_v7被创建.
EDIT2:我还注意到Eclipse会在/ res/layout下自动创建一个新布局fragment_main.xml.为什么??
我创建了一个新的Workspace,并尝试了几次.但我仍然有这个问题.
编辑3:如果您选择API 14之后的最低SDK版本,您将无法获得此支持文件夹.
请按以下步骤解决此问题,这对我有用.照常创建项目,而不是按照以下步骤
Step-1:
Run Code Online (Sandbox Code Playgroud)
右键单击您的项目 - >属性 - > Android - >在库面板中,删除 appcompat_v7库,应用和确定
Step-2:
Run Code Online (Sandbox Code Playgroud)
在Project goto res - > values - > style.xml中
在线路<style name="AppBaseTheme" parent="Theme.AppCompat.Light"> 变动从父值Theme.AppCompat.Light至android:Theme.Light
Step-3:
Run Code Online (Sandbox Code Playgroud)
在Project goto res - > values-v11 - > style.xml中
在线路<style name="AppBaseTheme" parent="Theme.AppCompat.Light"> 变动从父值Theme.AppCompat.Light至android:Theme.Holo.Light
Step-4:
Run Code Online (Sandbox Code Playgroud)
在Project goto res - > values-v14 - > style.xml中
在线路<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 变动从父值Theme.AppCompat.Light.DarkActionBar至android:Theme.Holo.Light.DarkActionBar
Step-5:
Run Code Online (Sandbox Code Playgroud)
在Project goto菜单 - > main.xml中删除 menu标签中的这些行:
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.test.MainActivity"
Run Code Online (Sandbox Code Playgroud)
并在item标签中将此行更改app:showAsAction="never"为android:showAsAction="never"
在项目中,转到res - > layout - > delete fragment.xml
Step-6:
Run Code Online (Sandbox Code Playgroud)
在MainActivity中,在删除不必要的代码之后,扩展Activity而不是ActionBarActivity,最后是MainActivity.java ,如下所示:
package com.example.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
请享用:)