2014-08-27 4 views
0

어떻게하면 화면의 오른쪽 아래에 텍스트를 그릴 수 있습니까?drawText 오른쪽 하단 위치

heres my code on drawtext.
편집

Rect textBounds = new Rect(); 
    if(this != null) { 
     timeCounter.start(); 
     int time= timeCounter.getTimeSeconds(); 
     String timetxt= String.format("%02d:%02d", time/60, time%60); 
     timer.getTextBounds(timetxt, 0, text.length(), textBounds); 
     canvas.drawText(timetxt, -textBounds.left, -textBounds.top, timer); 
     } 

난 그냥 몇 가지 자습서를 따라했지만 작동하지 않습니다. 누군가이 논리에 나를 도울 수 있습니까? 미리 감사드립니다!

+0

당신이 필요로하는, 당신은 onDrawCallback에서이 일을하지 않으면

canvas.drawText(timetxt, this.getWidth()-textBounds.left, this.getHeight()-textBounds.top, timer); 

가 하나로 이동 :이 오른쪽 하단에 그려하려는 경우

당신이 호출 할 필요 캔버스를 통해서만 또는 RelativeLayout에서도 작업 할 수 있습니까? – Javanator

+1

Paint.getTextBounds 메서드 참조 – pskink

+0

나는 이미 getTextBounds sir @ pskink를 설정했지만 현재는 drawtext 매개 변수에 문제가 있습니다. – user3691945

답변

1

당신이보기 ondraw 콜백 내에서 이것을하려고하는 희망이 있습니다.

그렇다면 고려해야 할 2 가지 사항입니다.

  • 문자열을 혼자서 포맷하는 대신 simpleDateFormat을 사용하십시오. 훨씬 쉬워.
  • 사용자가보기 밖에 그림을 그립니다.

sind 왼쪽 위 모서리가 0,0이면 textbounds.left 또는 textbounds.right> 0의 모든 값이 텍스트를 적어도 부분적으로 숨길 수 있습니다.)

+0

이 작동하지 않습니다. 나는 심지어 지금은 타이머를 볼 수 없습니다 @ DanielBo – user3691945

+0

당신은 전에 타이머를 볼 수 있었습니까? 그 이상한 것 같아 –

+0

그것은 this.getWidth() - textBounds.right 및 this.getHeight() - textBounds.bottom – pskink

관련 문제