Layout - Unterschiede zwischen Android 4 und dem Eclipse ADT

XploD

XploD

Erfahrenes Mitglied
42
Hallo zusammen.

Ich arbeite mich gerade in die Innereien von Android ein, und habe schon eine Klasse geschrieben, mit der ich mich per FTP,FTPS und vielleicht irgendwann per SFTP auf einen Server verbinden kann. Funktioniert soweit ganz gut.

Leider habe ich Probleme mit dem Layout:
Ich kann im Eclipse ADT einstellen, was ich will, die dargestellte Layouts im Emulator und meinem Gerät sehen anders aus:
Android_Layout.png


Oben steht immer der Appname mit einer türkisenen Linie darunter, obwohl ich im Layout Editor auf "Theme.Black.NoTitleBar" umgestellt habe. Kann es sein, dass Android 4 mit dem aktuellen ADT nicht 100% zusammenarbeitet?

Oder ist das eine Begrenzung der Klasse Activity, und ich müsste auf die App-Klasse aufbauen, um das Layout derart umzugestallten?

Eine zweite, kleinere Frage:
Welches Element in Android eignet sich am besten, um eine Dateiliste aufzubauen? Eine Listview wie in C# mit Icons scheint es nicht zu geben, oder?

Gruß,
Dirk
 
Hallo Dirk,

Frage 1: Du musst das Theme auch im Manifest festlegen. Der LayoutEditor dient nur zum Erstellen von Layouts mit einer Vorschau. Da kann man auch die Themes testen. Das Theme wird in der Regel im Manifest für die ganze App oder eine einzelne Activity festgelegt. Programmatisch ist dies auch möglich. Bei ADT gibt es keinen Bug, alles funktioniert richtig. Beachte auch, dass viele Gerätehersteller ein eigenes Theme nutzen und somit sieht es auf verschiedenen Geräten oft unterschiedlich aus. Das Holo Theme kann dir in dem Fall helfen.

Frage 2: Eine ListView musst du nutzen. Das Layout der einzelnen Einträge legt man in der getView(...) Methode fest.
 
  • Danke
Reaktionen: XploD
Ahhh. Hab's jetzt hinbekommen.

Die Listview verwirrt mich noch etwas:
Kann es sein, dass die ListView ein rein organisatorisches Objekt ist, und die Darstellung z.B. auf ein TextView basiert?

Ich blicke einfach noch nicht durch die Verschachtelung der ArrayList, ArrayAdapter, ... durch. Und leider beschreiben die ganzen Links, die ich gefunden habe, alle nur das wie, und nicht das warum...

Aber da werde ich wohl weiter googlen müssen...

Gruß,
_X_
 
Ich versuche es mal:

Bei einem Adapter handelt es sich um das Adapter Pattern http://de.wikipedia.org/wiki/Adapter_(Entwurfsmuster) Man versucht eine Liste (oder ähnliches) an Daten visuell darzustellen. Sogesehen kann man sagen, dass der Adapter die Brücke zwischen GUI und deinen Daten ist, man kann es auch als "organisatorisch" ansehen.

Das Warum sollte sich jetzt ergeben. Der Adapter bekommt eine Referenz der Daten und sagt der Nutzeroberfläche, wie sie diese Daten darzustellen hat. Das ist der Sinn. Die Daten können zB. in einer ArrayList vorliegen.

Ich hoffe es wird jetzt klarer. Du hast aber Recht, es gibt viele Links die einen Codefetzen zeigen, aber nicht das wie und warum erklären. In der getView Methode des Adapters kannst du festlegen, wie ein Element in der Liste dargestellt werden soll. Das kann auch komplexer mit Bildern etc. sein.

Ich kenne mich mittlerweile recht gut mit dem Android SDK aus, habe mir aber dennoch mein erstes Android Buch erst vor einem Monat gekauft: Professional Android 4 Application Development (Wrox Professional Guides): Amazon.de: Reto Meier: Englische Bücher Mich interessieren Best Practices, programmieren kann man fast alles, aber ob es auch elegant gelöst ist, ist eine andere Sache. Ich kann das Buch nur empfehlen, da wird das meiste viel genauer erklärt.
 
Zuletzt bearbeitet von einem Moderator:
  • Danke
Reaktionen: XploD
Danke für die Erklärung, so ähnlich hatte ich mir das auch schon zusammen gereimt...

Ich habe bis jetzt viel in Matlab M und C programmiert. Wenig in C++, C#, Python und PHP. Deswegen bin ich in der Objektorientierung noch nicht so ganz Zuhause.
Ich denke, ich werde mir auch bald ein Buch u dem Thema leisten.
Wie man sauber in Java strukturiert, und welche Strukturen besonders elegant sind.
Schlechten Code sehe ich täglich uf der Arbeit :p
 

Ähnliche Themen

H
Antworten
2
Aufrufe
1.311
Hcman
H
M
Antworten
4
Aufrufe
1.173
swa00
swa00
5
Antworten
0
Aufrufe
1.150
586920
5
Zurück
Oben Unten