3 Probleme - Emulator/Tablet/GL verschieden Darstellung , .xml nicht erkannt , neues Projekt starten

  • Antworten:6
  • Bentwortet
Volkan Aydin
  • Forum-Beiträge: 187

26.04.2014, 18:47:22 via Website

Ich arbeite nun seit 2 Wochen mit Eclipse, und bin immer noch am rantasten. Ich habe Jahrelange erfahrung in php, javascript. Dabei sind für mich ein paar logische Probleme aufgetaucht, die ich so nicht gleich auf google finden konnte.

Nach dem ich diesen dämlich emulator zum laufen gebracht habe. und ein Projekt zum laufen gebracht habe ( ein kleines rechen -app.) Und diese am emulator probieren konnte, habe ich einige Probleme die ich nicht gleich mit google lösen konnte. Ich nehme mal an dies sind standart Probleme und es gibt tausende Seiten die dieses Problem behandeln, nur, ich weis nicht wie man diese Probleme nennt :) bei php fand goggle immer sofort ne lösung :)

Problem 1. Ich will ein leeres Projekt starten (blanc activity). das heisst doch , ich will das lediglich eine activity.java datei erstellt wird, und eine .xml datei... nur, erstellt es mir immer gleich zwei dateien eine activitiy_main.xml + eine fragment_activity.xml , weshalb ist das so? und in der *.java datei stehen shon viele sachen die ich gar nicht will/brauche... versteht man das unter leeres Projekt? hmmmm..... :)

Problem 2. Mein Rechner funktioniert nun auf dem emulator, ich habe eine "nicht funktionierende" login Seite gebastelt, wo zur zeit nur ein button ist, mit dem ich dann die rechnerseite.xml aufrufe. Das habe ich auch geschafft. Beim Graphical Layout sieht alles so aus wie ich es will, AABER auf dem emulator verschwindet nun der text hinter dem "header" und rutscht nach oben, auf meine tablet passiert sogar noch was interresannteres! wenn ich auf den Button Klicke auf der loginseite verschwindet diese seite nicht, aber die rechnerseite wird geladen und nun sind beide seiten übereinander?

Problem 3 Ich habe ein leeres neues Projekt gestartet (mehrmals), danach füge ich eine xml datei hinzu, diese wird aber nicht erkannt, und auch nicht die darin enthaltenen Id's in der *.java datei... ( setContentView(R.layout.activity_login); ) bei meinem rechnerprojekt war das kein Problem? und jetzt geht es nicht mehr.

— geändert am 26.04.2014, 19:08:08

Antworten
Andy N.
  • Forum-Beiträge: 22.375

26.04.2014, 18:58:22 via Website

Hallo,

bitte bearbeite doch nochmal etwas deinen Threadtitel, damit andere User besser erkennen können, worum es hier geht. Hierfür einfach unter deinem ersten Beitrag auf "Bearbeiten" drücken, dann kannst du oben noch mal den Titel anpassen.

Danke :)

Viele Grüße,
Andy


OnePlus 3 (Resurrection Remix 5.8.2)
LG G Watch

Regeln | unsere Mods & Admins

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

26.04.2014, 20:14:41 via Website

  1. Also die layou_main.xml ist dein normales Layout. Wenn du eine Fragment Activity in den Projekteinstellungen ( beim erstellen) gewählt hast, dann wird die zweite XML Datei auch erstellt. Hat aber ohne Code normalerweise keine Bedeutung, bzw. kann bei Nichtbenutzung gelöscht werden.

  2. Dein Zweites Problem habe ich nicht ganz verstenden. Durch einen Button willst du einfch das Layout änder richtig? Steckt hinter dem ersten Layout auch eine Activity als Steuereinheit des Layouts oder werden beide Layouts aus einer Activity gesteuert? Dazu ist dein dein Button Click Code wichtig, bitte poste diesen mal.

  3. Hast du ein leeres Java projekt gestartet oder ein leeres Android Projekt. Du brauchst ein Leeres android Projekt. Bein einem "Leeren" versteht man normalerweise ein Layout als XML und eine Java Datei als Activity in auch schon ein bissel Code steht, weil dieser einfach notwendig ist, damit die App funktioniert. ( Welchen Code der erstellt wird brauchst du denn nicht) Standartmäßig ist umfasst der erstellte Code die onCreate und die menu create (oder so).

Aber zurück zu deinem 3. Problem: Warscheinlich weiß Eclipse jetzt nicht, welche XML im Code benutzt werden soll, da sie wie von dir beschrieben ja nicht automatisch erstellt worden ist. Normalerweise ist die Zugehörige Layout Datei immer dabei, es sei denn es ist wieder dieser Eclipse Bug am start..

Also Versuche es mal mit einem neuen Android Application Projekt und dann sollte das mi der XML gefixt sein.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Volkan Aydin
  • Forum-Beiträge: 187

26.04.2014, 21:58:42 via Website

zu punkt 1. Danke... das wollte ich wissen ;) Das komische an dem ganzen ist/war, das ich wirklich immer versuche ein leeres Layout zu erstellen also " Android application". aber ich schaffs nicht das diese fragment.xml datei nicht erstellt wird... aber da dies ja nicht benötigt wird, kann ich damit leben dies jedesmal zu löschen ;).

zu Punkt 2. Also der Code sieht folgendermassen aus:

public class FullscreenActivity extends Activity {

  public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.startseite);
    }

  public void rechnen (View view){

      int hohe;
      int breite;
      int ergebnis;

      EditText feldhohe = (EditText)findViewById(R.id.hohe);
      EditText feldbreite = (EditText)findViewById(R.id.breite);
      EditText feldergebnis = (EditText)findViewById(R.id.ergebnis);

      if(feldhohe.getText().toString().length() == 0){
          return;
      }
      if(feldbreite.getText().toString().length() == 0){
          return;
      }

      hohe = Integer.parseInt(feldhohe.getText().toString());
      breite = Integer.parseInt(feldbreite.getText().toString());

      ergebnis = hohe * breite;

      feldergebnis.setText(String.valueOf(ergebnis));
  }

  public void go_glas(View view){
      setContentView(R.layout.activity_fullscreen);
  }

} `

Beim XML habe ich dan Folgendes beim Button:

 android:onClick="go_glas"

Also Ja. Ich habe alles in einen Activity eingebaut, ich bin ein bisschen der learning by doing typ... leider bin ich noch nicht ganz schlau geworden was es für einen unterschied macht, mehrere "public class xxx extends Activity " zu machen.

Zu Punkt 3. Eclibs bug..... hmmmm ich hoffe mal nicht sonst vertrödle ich ja die ganze zeit für nix und wieder nix..... Ich habe mein Rechen projekt als vorlage verwendet, und diese in ein neues Projekt kopiert.. danach wollte ich die Details anpassen da ich den seiten andere namen zugewiessen habe.. und es wurde einfach eine xml datei nicht "gefunden" , dan habe ich andere xml dateien erstellt, und wieder nix, danach habe ich die erste xml datei angegeben, diese wurde wieder erkannt........ klingt für mich nach einen Bug aber da ich noch ein totaler "Java" anfänger bin kann ich nicht sagen ob es doch an mitr liegt.

Aber vielen dank schonmal für die hilfe.... manchmal sind es die kleinen Tipps die mir wirklich etwas nützen.

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

27.04.2014, 08:43:30 via App

Zum 2. würde ich dir empfehlen für jedes Layout eine Activity zu machen. Dann bleibt es übersichtlicher und dann sind keine Layoutüberlagerungen mehr vorhanden.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Volkan Aydin
  • Forum-Beiträge: 187

27.04.2014, 20:30:31 via Website

Vielen Dank für die Hilfe..... ich weiss zwar nicht weshalb es dazu eine zweite Activity braucht.. finde ich aber noch raus ;) wie gesagt, learnig by doing.... :)

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

27.04.2014, 21:01:25 via App

Braucht es nicht aber wenn das erste Layout bedienbar sein soll ist es mit eigerner Activity übersichtlicher aber nicht zwingend. Kannst es auch so lassen war nur so ein Tipp.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten