Wie füge ich einen Rahmen um das lineare Layout hinzu, außer am unteren Rand?

Lesezeit: 4 Minuten

Wie fuge ich einen Rahmen um das lineare Layout hinzu
Damir

Wie füge ich einen Rahmen um das lineare Layout hinzu, außer am unteren Rand? LinearLayout muss links, oben und rechts einen Rand haben, aber nicht unten.

Wie fuge ich einen Rahmen um das lineare Layout hinzu
Android-Stack

Erstellen Sie eine XML-Datei namens border.xml im drawable-Ordner und fügen Sie den folgenden Code ein.

 <?xml version="1.0" encoding="utf-8"?>
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  <item> 
    <shape android:shape="rectangle">
      <solid android:color="#FF0000" /> 
    </shape>
  </item>   
    <item android:left="5dp" android:right="5dp"  android:top="5dp" >  
     <shape android:shape="rectangle"> 
      <solid android:color="#000000" />
    </shape>
   </item>    
 </layer-list> 

Fügen Sie dann Ihrem linearen Layout einen Hintergrund wie folgt hinzu:

         android:background="@drawable/border"

BEARBEITEN :

Diese XML wurde mit einer laufenden Galaxie getestet Lebkuchen 2.3.3 und lief perfekt, wie im Bild unten gezeigt:

Bildbeschreibung hier eingeben

AUCH

getestet mit laufendem Galaxy S3 JellyBean 4.1.2 und lief perfekt, wie im Bild unten gezeigt:

Bildbeschreibung hier eingeben

Endlich funktioniert es perfekt mit allen APIs

BEARBEITEN 2:

Es kann auch mit einem Strich erfolgen, um den Hintergrund transparent zu halten, während mit dem folgenden Code ein Rand außer am unteren Rand erhalten bleibt.

<?xml version="1.0" encoding="utf-8"?>
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:left="0dp" android:right="0dp"  android:top="0dp"  
        android:bottom="-10dp"> 
    <shape android:shape="rectangle">
     <stroke android:width="10dp" android:color="#B22222" />
    </shape>
   </item>  
 </layer-list> 

Ich hoffe das hilft .

  • funktioniert es bei dir, das getestet und bei mir funktioniert, prüfe es bitte

    – Android-Stack

    5. Mai ’12 um 16:06

  • Gibt es noch etwas hinzuzufügen? Hat bei mir nicht funktioniert. Die andere Antwort unten hat jedoch funktioniert.

    – Shim

    25. Okt ’12 um 19:37


  • @Noman es funktioniert perfekt mit allen APIs, überprüfen Sie bitte die Update-Antwort

    – Android-Stack

    18. Februar ’13 um 18:21

  • Wie wäre es mit transparentem Rechteck statt Schwarz mit rotem Rand?

    – Hanry

    4. Juni ’13 um 14:20

  • @hanry Sie können es auf eine andere Weise tun, überprüfen Sie BEARBEITEN 2

    – Android-Stack

    7. Juni ’13 um 20:43

Speichern Sie diese XML und fügen Sie sie als Hintergrund für das lineare Layout hinzu….

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <stroke android:width="4dp" android:color="#FF00FF00" /> 
    <solid android:color="#ffffff" /> 
    <padding android:left="7dp" android:top="7dp" 
            android:right="7dp" android:bottom="0dp" /> 
    <corners android:radius="4dp" /> 
</shape>

Hoffe das hilft! 🙂

  • Antwort muss akzeptiert werden. Funktioniert einwandfrei mit Nexus 5 5.1.1

    – hash

    20. Mai ’15 um 7:13

  • Ich habe diese Lösung ausprobiert, aber der untere Rand ist noch da?

    – Sam

    15. Juni ’17 um 9:40

1641921674 471 Wie fuge ich einen Rahmen um das lineare Layout hinzu
Jonas

Kenny hat Recht, ich möchte nur ein paar Dinge klären.

  1. Datei erstellen border.xml und lege es in den Ordner res/drawable/
  2. füge den Code hinzu

    <shape xmlns:android="http://schemas.android.com/apk/res/android"> 
       <stroke android:width="4dp" android:color="#FF00FF00" /> 
       <solid android:color="#ffffff" /> 
       <padding android:left="7dp" android:top="7dp" 
            android:right="7dp" android:bottom="0dp" /> 
       <corners android:radius="4dp" /> 
    </shape>
    
  3. zurücksetzen wie android:background="@drawable/border" wo immer du die grenze haben willst

Meins hat zuerst nicht funktioniert, weil ich das gestellt habe border.xml im falschen Ordner!

1641921674 306 Wie fuge ich einen Rahmen um das lineare Layout hinzu
PAD

Hier ist ein Github-Link zu einer leichten und sehr einfach zu integrierenden Bibliothek, die es Ihnen ermöglicht, für jedes gewünschte Widget nach Belieben mit Rahmen zu spielen, einfach basierend auf einem FrameLayout-Widget.

Hier ist ein kurzer Beispielcode, damit Sie sehen können, wie einfach es ist. Weitere Informationen finden Sie jedoch unter dem Link.

<com.khandelwal.library.view.BorderFrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:leftBorderColor="#00F0F0"
            app:leftBorderWidth="10dp"
            app:topBorderColor="#F0F000"
            app:topBorderWidth="15dp"
            app:rightBorderColor="#F000F0"
            app:rightBorderWidth="20dp"
            app:bottomBorderColor="#000000"
            app:bottomBorderWidth="25dp" >
    </com.khandelwal.library.view.BorderFrameLayout>

Wenn Sie also keine Ränder am unteren Rand haben möchten, löschen Sie die beiden Zeilen über den unteren Rand in diesem benutzerdefinierten Widget, und das ist erledigt.

Und nein, ich bin weder der Autor dieser Bibliothek noch einer seiner Freunde 😉

.

374580cookie-checkWie füge ich einen Rahmen um das lineare Layout hinzu, außer am unteren Rand?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy