sangre roja lunar luna julio android eclipse appcompat

android - roja - el eclipse



¿Por qué Eclipse agrega automáticamente el soporte de la biblioteca appcompat v7 cuando creo un nuevo proyecto? (10)

¿Por qué mi eclipse agrega automáticamente la compatibilidad de la biblioteca appcompat v7 cada vez que creo un nuevo proyecto?

Debido a que su SDK de destino está configurado en 15, la Barra de acción está activada de forma predeterminada y su SDK admitido mínimo está configurado en 10. La Barra de acción aparece en 11, por lo que necesita una biblioteca de soporte, Eclipse lo agrega para usted. Reference.

Puede configurar las bibliotecas de proyectos en la ruta de compilación de las propiedades del proyecto.

¿Por qué Eclipse agrega automáticamente el soporte de la biblioteca appcompat v7 cada vez que creo un nuevo proyecto?

Estoy creando un proyecto simple cuya MainActivity debe extender la Activity , pero no lo hace. Eclipse agrega automáticamente el soporte de la barra de acción.

¿Cómo creo un proyecto simple sin la biblioteca appcompat ? Para su información, he descargado la última versión de ADT con todo actualizado recientemente. Estoy usando Windows 7 x64.


Como se indica en la Descripción general de la biblioteca de soporte de Android, se considera una buena práctica incluir la biblioteca de soporte de forma predeterminada debido a la gran diversidad de dispositivos y la fragmentación que existe entre las diferentes versiones de Android (y, por lo tanto, de las API proporcionadas).

Esta es la razón por la que las herramientas de plantillas de código de Android incluidas en Eclipse a través de Android Development Tools (ADT) integran de forma predeterminada.

Noté que apuntas a la API 15 en tu muestra, pero el SDK mínimo requerido para tu paquete es la API 10 , para el cual las bibliotecas de compatibilidad pueden proporcionar una enorme cantidad de API compatibles con versiones anteriores. Un ejemplo sería la capacidad de utilizar la Fragment API que aparece en API 11 (Android 3.0 Honeycomb) en un dispositivo que ejecuta una versión anterior de este sistema.

También se debe tener en cuenta que puede desactivar la inclusión automática de la biblioteca de soporte de forma predeterminada.


Cree un nuevo Android Application Project y desmarque Create activity en el paso dos (Configurar proyecto).


De acuerdo a http://developer.android.com/guide/topics/ui/actionbar.html

Las API de ActionBar se agregaron por primera vez en Android 3.0 (nivel de API 11), pero también están disponibles en la Biblioteca de soporte para compatibilidad con Android 2.1 (nivel de API 7) y superior.

En resumen, el proyecto generado automáticamente que está viendo modulariza el proceso de agregar el ActionBar a las API 7-10.

Consulte http://hmkcode.com/add-actionbar-to-android-2-3-x/ para obtener una explicación simplificada y un tutorial sobre el tema.


Disculpe con mi inglés. Cuando cree un nuevo proyecto de Android, debe elegir una API de alto nivel, por ejemplo: desde la API 17 a la API 21, no tendrá una aplicación compacta y es muy fácil de compartir el proyecto. Si lo hizo con una API más baja, simplemente edite en el manifiesto de Android para tener una API superior :), después de eso, puede eliminar Appcompat V7.


Eclipse creó automáticamente appcompat_v7. Debido a que Kitkat Api se lanzó, agrega automáticamente appcompat_v7 y fragment_main.xml .

Las mejores formas de resolver estos:

  1. En primer lugar en el proyecto, red marked appcompat Right click->properties->Android . red marked appcompat puede ver la aplicación red marked appcompat encuentra en Reference . Haga clic en eso y elimínelo. Luego marque el nombre de destino correcto en Project Build Target .

  2. Elimine el archivo fragment_main.xml y Appcompat creado en su Eclipse .

  3. Edita y cambia tu activity_main.xml como estos:

    <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout>

  4. En res / values ​​/ styles.xml:

    <resources> <style name="AppBaseTheme" parent="android:Theme.Light"> </style> <!-- Application theme. --> <style name="AppTheme" parent="AppBaseTheme"> </style> </resources>

  5. En res / values-v11 / styles.xml tienes que cambiar así:

    <resources> <style name="AppBaseTheme" parent="android:Theme.Holo.Light"> </style> </resources>

  6. En res / values-v14 / styles.xml tienes que cambiar así:

    <resources> <style name="AppBaseTheme" parent="android:Theme.Light"> </style> <style name="AppTheme" parent="AppBaseTheme"> </style> </resources>

  7. Cambie su menu / main.xml como estos:

    <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/action_settings" android:orderInCategory="100" android:showAsAction="never" android:title="@string/action_settings"/> </menu>

  8. Finalmente cambia tu MainActivity.java como estos:

    import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }

LikeWise tienes que hacerlo para crear un nuevo proyecto


Noté la creación de la biblioteca ''appcompat'' al crear un nuevo proyecto de Android con la versión ADT 22.6.2, incluso cuando el minSDK se configuró en 11 y el targetSDK se configuró en 19

Esto estaba sucediendo porque, en la nueva plantilla de proyecto, android está usando algunos atributos que son de la biblioteca de soporte. Por ejemplo, si se creó un nuevo proyecto con la barra de acciones, en el main.xml del menú se podría encontrar una app:showAsAction="never" que es de la biblioteca de soporte.

  • Si la aplicación está dirigida a la versión de Android 11 y superior, se puede cambiar este atributo a android:showAsAction en android:showAsAction menú
  • También el conjunto de temas predeterminado podría ser "Theme.AppCompat.Light.DarkActionBar" como se muestra a continuación (styles.xml)

    <style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- API 14 theme customizations can go here. --> </style>

    En este caso, el tema principal en style.xml se debe cambiar a "android: style / Theme.Holo.Light.DarkActionBar"

  • Además de esto, si se hizo referencia a Fragment, Fragments Manager de la biblioteca de soporte en el código de MainActivity.java, estos deben cambiarse de manera apropiada a Fragment, FragmentManager del SDK.

Se incluye porque su versión de SDK mínima está establecida en 10. La ActionBar se introdujo en la API 11. Eclipse lo agrega automáticamente para que su aplicación se vea más consistente en todo el espectro de todas las versiones de Android que admite.


Si no está apuntando a las versiones 2.x, puede configurar su versión sdk mínima de 4.x y luego crear el proyecto. Appcompat V7 lib no será creado.


Soy nuevo con Android y el proyecto appcompat_v7 siempre se crea cuando creo un nuevo proyecto de aplicación para Android que me hace sentir incómodo.

Esto es solo un paseo alrededor Elija Propiedades del proyecto -> Android y luego en el cuadro Biblioteca simplemente elimine appcompat_v7_x y agregue appcompat_v7. Ahora puedes eliminar appcompat_v7_x.

Desmarcar Crear actividad en el asistente de creación de proyectos no funciona, porque cuando se crea una actividad mediante el asistente, la aplicación compatir_v7_x vuelve a aparecer. La versión de mi ADT es v22.6.2-1085508 .
Lo siento si mi ingles es malo