Controlling-Sicht aus einer Ressourcen -

Ich habe ein layout mit zwei ImageViews. Ich möchte eine Anzeige im hochformat und andere im Querformat. Wie kann ich es erreichen, Ressourcen nutzen? (Ich weiß, wie Sie programmgesteuert, sondern spezielle, die ich brauche, um es zu erreichen, mithilfe der Ressourcen).

Habe ich versucht, etwas wie

in res/layout/may_layout.xml:

...
<ImageView
      android:id="@+id/image1"
      android:visibility="@integer/visible_in_portrait"   <<-- is this allowed?
      ...
/>
<ImageView
      android:id="@+id/image2"
      android:visibility="@integer/visible_in_landscape"   
      ...
/>

in res/values/integers.xml:

...
<!-- NOTE: 0 and 8 are VISIBLE and GONE respectively -->
<integer name="visibile_in_portrait">0</integer>
<integer name="visibile_in_landscape">8</integer>

in res/values-land/integers.xml:

...
<integer name="visibile_in_portrait">8</integer>
<integer name="visibile_in_landscape">0</integer>

Aber bekomme ich einen Laufzeit-Fehler (index out of bound), wenn Sie versuchen, sich zu füllen die Bilder. Wenn ich entfernen Sie das android:visibility-Anweisungen, das Programm läuft aber ich sehe beide Bilder.

Q: Was ist der Weg, um eine Ressource als Wert für das android:visibility-Attribut?

(wenn Sie sich Wundern, warum die Einstellung programmgesteuert wird mir nicht helfen, es hat zu tun mit der automatischen Landschaft/hochformat wechseln von app-widgets mit uri Datei, bitmaps).

InformationsquelleAutor user1139880 | 2012-03-17
Schreibe einen Kommentar