2012-06-18 8 views
6

Bitte siehe unten:In Android, wie positioniere ich ein Bild übereinander, um wie ein Abzeichen auszusehen?

iPhone badges

Ich versuchte Absolutes Layout verwenden, aber das veraltet ist. Ich schätze deine Hilfe, danke.

+6

Niemals, * je *, *** jemals *** benutzen 'AbsoluteLayout'. Je. –

+2

@AlexLockwood: Also, was Sie sagen wollen ist, dass Leute 'AbsoluteLayout' nicht benutzen sollten? Ich dachte nur, ich würde nachsehen. ; D – Squonk

+1

@Squonk, Es gibt keine "zu viel Betonung", wenn es um diese Dinge geht ... besonders auf StackOverflow: P –

Antwort

16

RelativeLayout ist eine gute Option.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" > 

<ImageView 
    android:id="@+id/icon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="5dp" 
    android:scaleType="centerCrop" 
    android:src="@drawable/iconImage" /> 

<ImageView 
    android:id="@+id/badge" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignRight="@+id/icon" 
    android:layout_alignTop="@+id/icon" 
    android:src="@drawable/badge" /> 

Wenn Sie tatsächlich eine Plakette mit einer dynamischen Nummer/Text möchten, dann können Sie das zweite ImageView ein TextView (oder ein ViewGroup wie LinearLayout oder RelativeLayout) machen und einen Hintergrund ziehbar geben und setze den Text auf was du willst.

+0

Danke, das war großartig. – StackOverflowed

+0

@Sam Dozor Wie bekomme ich das Badge-Imageview im äußeren Teil des ersten ImageView angezeigt (es wird gerade im ImageView Icon angezeigt). –

7

Werfen Sie einen Blick auf das Projekt ViewBadger auf github (aber denken Sie daran, dass Sie nicht versuchen sollten, andere Plattform-UI-Elemente in Android-Apps zu kopieren).

+2

+1 für kopieren Sie nicht andere Plattformen UI! –

+0

Ich hasse normalerweise +1, aber +1. War da, tu es, eine Welt voller Schmerzen - nie wieder. – Simon

Verwandte Themen