CustomView LayoutInflater zeigt im AndroidStudio verschachteltes Layout

  • Hallo gemeinsam,
    ich habe ein kleines Problem das mich verwirrt, ich werde im Layouten einfach nicht warm. :)
    Es geht mir um das erben eines Views bzw in meinem Falle jetzt ein LinearLayout, dort inflate ich ein XML Layout aus meinen Ressourcen und stelle fest das er im Komponenten Baum ein View erstellt und in dem View ein weiteres View.


    Wenn ich erbe und fange an im Konstruktor Views einzufügen oder die Farbe zu ändern bleibt es auch im Baum bei ein und dem selben angezeigen View.


    [Blockierte Grafik: http://i.imgur.com/B5UKpyE.png]



    Die geerbte Klasse:



    Layout XML:



    Wenn ich eine Textview Platziere wird ja auch kein View im View erzeugt, was mache ich falsch?
    Danke!

  • Meine HauptLayout über setContentView() und im HauptLayout folgendermaßen:

    Code
    <view
            class="com.myapplication.testapplication.widgets.OptionMenuWidget"
            android:layout_width="wrap_content"
            android:layout_height="
            android:id="@+id/view2"
            android:layout_below="@+id/scrollView"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />


    Das AndroidStudio gibt es so vor wenn ich aus der Toolbox CustomView wähle.

  • Also wenn height wirklich leer ist dürfte das gar nicht erst starten.
    Hast Du die Höhe und Breite spaßeshalber einmal fest eingetragen oder auf die ganze Größe aufgebläht?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Stimmt, ein Teil wurde nicht mit kopiert, allerdings wird bei dem CustomView automatisch in höhe und Breite wrap_content verwendet obwohl ich im XML Layout in der Breite fill_parent verwende und die höhe wird vom Inhalt bestimmt.


    Jetzt habe ich die höhe und breite wie du gesagt hast beide auf fill_parent gestellt und interessant ist nun das es wirklich den gesamten Platz einnimmt, jedoch betrifft es nicht das Layout das über den LayoutInflater eingebunden ist.


    [Blockierte Grafik: http://i.imgur.com/HrpW6tq.png]


    Schaut so aus als würde ich den LayoutInflater falsch anwenden :-/

  • Das eingebundene Layout hat doch als Größenvorgabe auch 'wrap_content', sieht also für mich stimmig aus.
    Liegt es eventuell an Deiner fehlenden onMeasure() Implementierung, dass 'wrap_content' nicht greift und die Höhe und Breite deshalb zu klein dargestellt wird?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!