이미지 위에 글자(Text Over Image)
안드로이드를 작업하다보면 이미지위에 글자를 쓰고 싶은경우가 있습니다. 그럴때에는 다음과 같이 XML 에서 ImageView 와 TextView 를 컨트롤 해서 사용하면 이미지위에 글자를 입힐 수가 있습니다.
주의해야 할점은 글자를 넣을 이미지 내부가 투명해야 하며, RelativeLayout 에서만 가능하고, 세부적인 위치를 컨트롤 하고 싶을 때는 padding이나 margin을 사용하면 됩니다.
활용예제
<RelativeLayout
android:id="@+id/a_bus_info_lay"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/a_bus_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:src="@drawable/a_bus" />
<TextView
android:id="@+id/a_bus_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/a_bus_img"
android:layout_alignLeft="@id/a_bus_img"
android:layout_alignRight="@id/a_bus_img"
android:layout_alignTop="@id/a_bus_img"
android:gravity="center"
android:paddingLeft="20dp"
android:text="10분전"
android:textColor="#000000"
android:textSize="30dp"
android:textStyle="bold"
android:typeface="sans" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/a_bus_info_lay"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/a_bus_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:src="@drawable/a_bus" />
<TextView
android:id="@+id/a_bus_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/a_bus_img"
android:layout_alignLeft="@id/a_bus_img"
android:layout_alignRight="@id/a_bus_img"
android:layout_alignTop="@id/a_bus_img"
android:gravity="center"
android:paddingLeft="20dp"
android:text="10분전"
android:textColor="#000000"
android:textSize="30dp"
android:textStyle="bold"
android:typeface="sans" />
</RelativeLayout>
폰화면마다 글씨 위치가 다틀리게 나오네요
답글삭제