알림 번호를 표시하는 Imagebutton을 만들고 있습니다.Android : 이미지의 특정 영역에 텍스트를 쓰는 방법
내 목표는 이미지의 특정 검은 색 원의 수를 (1,2 ..) 작성하는 것입니다 : 여기 내 샘플 이미지입니다. RelativeLayout과 FrameLayout을 시도했지만 결과를 얻는 데 신뢰할 수있는 방법이라고 생각하지 않습니다. 이유는 여백이기 때문에 여백은 장치 크기에 따라 다릅니다.
시작 하시겠습니까?
알림 번호를 표시하는 Imagebutton을 만들고 있습니다.Android : 이미지의 특정 영역에 텍스트를 쓰는 방법
내 목표는 이미지의 특정 검은 색 원의 수를 (1,2 ..) 작성하는 것입니다 : 여기 내 샘플 이미지입니다. RelativeLayout과 FrameLayout을 시도했지만 결과를 얻는 데 신뢰할 수있는 방법이라고 생각하지 않습니다. 이유는 여백이기 때문에 여백은 장치 크기에 따라 다릅니다.
시작 하시겠습니까?
당신은 갈 :
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/pencil">
<TextView
android:id="@+id/circle"
android:layout_width="22dp"
android:layout_height="22dp"
android:background="@drawable/circle"
android:gravity="center"
android:text="2"
android:layout_gravity="bottom|right"
android:layout_marginRight="8dp"
android:layout_marginBottom="8dp"
android:textColor="#FFFFFF"
android:textSize="12sp" />
</FrameLayout>
이미지 :
출력 :
고마워! 나는 여전히 의심 스럽다. 8dp의 마진 값을 사용하여 올바른 결과를 얻는다. 필자는 원하는 결과를 얻기 위해 10의 값을 사용했다. android : layout_marginRight = "10dp" android : layout_marginBottom = "10dp" – Signcodeindie
원 이미지의 너비와 높이가 원인 일 수 있습니다. 그러나 다양한 화면에서 테스트하여 제대로 작동하는지 확인할 수 있습니다. – JoelFernandes
안녕하세요 조엘, 정말 쉽게하고 문제를 해결해 주셔서 감사합니다. 답으로 표를받을 자격이 있습니다. 건배! – Signcodeindie
ImageView에서 확장 한 사용자 정의보기 클래스를 만들 수 있습니다. 이 같은 뭔가를 된 onDraw 메소드를 오버라이드 (override)해야 할 것이다 :
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// Calculate x and y positions and set up a Paint instance with correct color/size
canvas.drawText(String.valueOf(myNumber), x, y, myPaint);
}
이미지 내의 텍스트를 정렬 중력을 사용하여 이미지
<TextView android:id="@+id/img" android:layout_width="45sp" android:layout_height="45sp" android:background="@drawable/circle" android:gravity="center" android:text="r" />
로 설정 배경이와 텍스트 뷰를 사용해보십시오. 여기
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom|right"
android:paddingRight="20dp"
android:paddingBottom="15dp"
android:textColor="@android:color/white"
android:background="@drawable/text"
android:text="1" />
try this code
Bitmap bitmap = ... // Load your bitmap here
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setTextSize(10);
canvas.drawText("Some Text here", x, y, paint);
제 경우에 x, y를 찾는 방법은 무엇입니까? – Signcodeindie
@Signcodeindie :이 좌표를 사용해보십시오 '11, 16 ' –
검은 색 원과 연필 배경 이미지를 분리하십시오. FrameLayout을 사용하여 검정색 원을 연필 배경 위에 놓습니다. 또한 원을 TextView의 배경 드로잉으로 사용하십시오. – JoelFernandes
@nitesh 이미지로 무엇을 의미하는지 모르시겠습니까? 거기에 내 질문에있다. – Signcodeindie
@ Signcodeindie 이미지가 어디에 있습니까? :) – nitesh