2010-04-02 11 views
5

Creé una aplicación Hello World, y el sistema generó la mayor parte del lenguaje Android a continuación. Al ejecutar la aplicación sin la declaración System.out, no se muestra "Hola" en el emulador. Luego, usando el tutorial de Eclipse, leo que puedo agregar la declaración System.out.println a main. De nuevo, la aplicación se ejecuta, pero no hay salida.Mi aplicación Android "Hello World" no dice "Hola"

¿Qué no entiendo aquí?

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello" 
    System.out.println =" Hello world!" 
    /> 
</LinearLayout> 
+2

¿Está diciendo mundo? – Shawn

Respuesta

2

preguntas para principiantes están muy bien, pero chico, esto realmente es una pregunta principiante :) En cuanto a su problema, puede haber algunas cosas. Lo que probablemente sucedió es que ha adaptado el tutorial básico "Hola, Android" que define las TextViews en el código, para que se muestre con un archivo XML. Sin embargo, cuando hiciste eso, no cambiaste el código para usar ese archivo XML, y en cambio está tratando de mostrar tu viejo TextView. Además, "System.out.println =" hello world! "No hará nada cuando esté en su archivo XML, debe poner declaraciones como esa en el código mismo. De hecho, de manera improvisada no recuerdo si System.out .... incluso hace cualquier cosa en Android - las líneas de depuración deben emitirse usando Log.d ("algún título", "su mensaje"), como salidas al dispositivo de registro específico de Android.

De todos modos, habría ser más fácil para ayudar a resolver su problema si mostró un poco más de su código. Intente asegurarse de que está formateado correctamente, por ejemplo, al sumar líneas de código en cuatro espacios. Puede obtener una vista previa antes de enviar su versión editada en la ventana inferior para hacer seguro que se ve bien.

+0

gracias a los dos, esto es realmente útil. – keith

+0

Es posible configurar las cosas para que 'System.out' y' System.err' se transfieran a los registros, pero de forma predeterminada, terminan en el suelo. – Pops

1

Pruebe esto

codificado en [your_layout] .xml ... androide: layout_width = "fill_parent" androide: layout_height = "wrap_content" android: text = "Hola mundo" />

o esta

Uso referencia en [your_layout] .xml ... androide: layout_width = "fill_parent" androide: layout_height = "wrap_content"
android: text = "@ cuerdas/hola" />

en res/valores/strings.xml

<resources> 
    <string name="hello">Hello world</string> 
</resources> 

Eso debería ayudarlo a comenzar un poco. Algunas cosas para recordar, System.out.println no hace nada en Android, especialmente en archivos XML. Al tratar el texto con "@ string/hello", significa que la aplicación buscará el nombre de cadena "hola" dentro de strings.xml.

De todos modos, deberías probar el tutorial de Android para comenzar.

0

Una cosa es segura, poner println en su archivo de recursos de diseño no hará nada. Este código (si se puede llamar así) NO se ejecuta. Esta es solo la definición de vista. En todo caso, esta instrucción debe invocarse desde su implementación de clase de actividad (el archivo java) para ser ejecutada.

8

Tuve el mismo problema, resulta que todo lo que tenía que hacer era ser más paciente.

El tiempo de carga inicial del AVD parece FOREVER ... y en Eclipse antes de que realmente parezca que el dispositivo se está iniciando, solo dice "ANDROID_" contra una pantalla totalmente negra durante un buen rato.Pensé que no estaba cargando correctamente mi texto "Hola, Android", pero en realidad era solo una pantalla de carga y no esperé lo suficiente. (Sí, ahora me siento como un idiota y un novato.)

Si sigues junto con el Tutorial Hello World de Desarrolladores de Android, y parece que no funciona, si nunca has cargado el AVD antes ... tal vez solo espere más?

+0

Este fue mi problema. Vi mensajes de error aleatorios y pensé que faltaba algo ... ¡no! Intenté esperar 3 minutos completos y luego salió. – ArtB

+0

Dios ... ¿por qué no lo dicen en algún lugar de la documentación ... lo intentaron todo. Gracias por tu respuesta. :) – eddy147