2010-12-14 4 views
0

Ich möchte eine Komponente erstellen, die als Navigationsmenü für eine Android-Anwendung angezeigt wird. Grundsätzlich ist die benutzerdefinierte Komponente eine rechteckige "Div" (um HTML-Begriffe zu verwenden), die sechs Schaltflächen enthält. Jede Schaltfläche enthält eine Verknüpfung zu einem anderen Teil der Anwendung. Ich möchte das auf jeder "Seite" verwenden, also möchte ich es leicht pflegen lassen.Tipps zum Erstellen von benutzerdefinierten, reuesable Komponenten in Android

Welche Klasse wird empfohlen, um benutzerdefinierte Komponenten wie diese zu erstellen? (Ich habe die „Widget“ Klasse gesehen, aber nicht sicher, ob dies nur für Widget, das außerhalb der App erscheinen (wie Google-Suche) verwendet werden soll)

Und

der Prozess so einfach wie die benutzerdefinierte "Widget" -Klasse mit einem eigenen XML-Layout erstellen und dann zu jeder Aktivitätsklasse hinzufügen?

Antwort

3

Die Klasse zu erweitern ist View, die Widget-Klasse ist für Widgets auf dem Homescreen. Dies ist ein nettes Dokument zu lesen: Building Custom Components, ich schlage vor, die Compound Controls Abschnitt zu betrachten, die für Ihr Problem geeignet scheint.

Ist der Prozess so einfach wie die benutzerdefinierten „Widget“ Klasse mit einem eigenen XML-Layout Erstellen und Hinzufügen es dann zu jeder Aktivitätsklasse?

Ja, wenn Sie Ihre eigene Sicht geschrieben haben, müssen Sie nur in der XML-Layout hinzufügen (genau wie Sie mit den Android-Ansichten zu tun), so etwas wie diese:

<com.your.package.YourNiceView 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"/> 
+1

+1 für das Hinzufügen zu Ihrer Antwort 3 mal in 2 Minuten, 1 Minute, nachdem ich es gefragt habe .... – tpow