Problem gelöst - Kann geschlossen werden
ZitatAlles anzeigenHallo.
Habe mein Buch jetzt erhalten und hab gleich mal los geschrieben. Hab alles aufmerksam gelesen und soweit auch verstanden. Jetzt hab ich folgendes Problem:
Views und ViewGroups erstellt man ja in der activity_main.xml. Habe dort ein LinearLayout und darin ein paar simple Views. Daraus generiert Android die Klasse R in der alle Elemente in der activity_main.xml abgelegt werden. Ich habe mein XML-Layout gespeichert und schaue in die R-Datei und dort ist nichts generiert worden. Auch wenn ich meine Main-Activity anschaue, zeigt mir Eclipse alle View-Referenzen unterstrichen an und meint dass die ID nicht gefunden wurde.
Jemand schon mal ein ähnliches Problem gehabt?
activity_main.xml
Code<?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:id="@+id/nachricht" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:id="@+id/eingabe" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/vorname_nachname" /> <Button android:id="@+id/weiter_fertig" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" /> </LinearLayout>
MainActivity.java
Codepackage com.example.halloandroid; import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView; public class MainActivity extends Activity { private TextView nachricht; private EditText eingabe; private Button weiter_fertig; private boolean erster_klick; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); nachricht = (TextView) findViewById(R.id.nachricht); eingabe = (EditText) findViewById(R.id.eingabe); weiter_fertig = (Button) findViewById(R.id.weiter_fertig); erster_klick = true; nachricht.setText(R.string.willkommen); weiter_fertig.setText(R.string.weiter); weiter_fertig.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if(erster_klick == true) { nachricht.setText(getString(R.string.hallo, eingabe.getText())); eingabe.setVisibility(View.INVISIBLE); weiter_fertig.setText(R.string.fertig); erster_klick = false; } else { finish(); } } }); }}
EDIT: Ah okey. Hab gerade gesehen, dass die Codes zusammengeschoben werden. Kann man das verhindern?
EDIT2: Habe grade ergoogled, dass die aapt-Tools dieses Generieren eigentlich übernehmen. Es scheint also es würde das nötige Tool nicht ausgeführt werden. Jemand dazu eine Idee?
EDIT3: Habe die Lösung gefunden. Habe in der strings.xml den String "menu_settings" rausgenommen, da ich ihn nirgends in der Manifest-Datei gefunden habe und dachte er wird nicht benötigt. Den Ordner "menu" mit deren XML-Datein hab ich scheinbar übersehen. Naja. Die Lösung war auf jeden Fall den besagten String wieder hinzuzufügen.