줄을 원으로 그리는 대신 가장자리를 단어로 사용하여 프로그래밍 방식으로 원이나 반원으로 텍스트를 추가하고 싶습니다. 더 자세한 설명은 이미지를 참조하십시오.어떻게 안드로이드에서 원형 패턴의 뷰에 텍스트를 그릴 수 있습니까?
어떻게 안드로이드에서이 작업을 수행 할 수 있습니다, 또는 나는이 문제를 좀 도와하기 위해 어떤 자원을 읽을 수 있을까?
줄을 원으로 그리는 대신 가장자리를 단어로 사용하여 프로그래밍 방식으로 원이나 반원으로 텍스트를 추가하고 싶습니다. 더 자세한 설명은 이미지를 참조하십시오.어떻게 안드로이드에서 원형 패턴의 뷰에 텍스트를 그릴 수 있습니까?
어떻게 안드로이드에서이 작업을 수행 할 수 있습니다, 또는 나는이 문제를 좀 도와하기 위해 어떤 자원을 읽을 수 있을까?
이렇게하려면 Canvas
에 텍스트를 그려야합니다. View
의 하위 클래스는 Canvas
(onDraw()
)이며 사용자 지정 텍스트를 그리는 데 사용할 수 있습니다. drawTextOnPath()
메서드를 사용하면 선택한 Path
객체에 텍스트를 넣을 수 있습니다. 새 인스턴스를 만들고 addArc()
을 사용하여 반원형 경로를 만들 수 있습니다.
코드 아래에서 사용할 수 있습니다. 그리고 Textview를 원하는대로 만드십시오. 여기 당신은 다음 setBackgroundResource(R.drawable.YOUR_IMAGE);
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new GraphicsView(this));}
static public class GraphicsView extends View {
private static final String QUOTE = "text in a half-circle";
private Path circle;
private Paint cPaint;
private Paint tPaint;
public GraphicsView(Context context) {
super(context);
int color = Color.argb(127, 255, 0, 255);
circle = new Path();
circle.addCircle(230, 350, 150, Direction.CW);
cPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
cPaint.setStyle(Paint.Style.STROKE);
cPaint.setColor(Color.LTGRAY);
cPaint.setStrokeWidth(3);
// For Background Image
setBackgroundResource(R.drawable.YOUR_IMAGE);
tPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
tPaint.setStyle(Paint.Style.FILL_AND_STROKE);
//TextColor you want to set
tPaint.setColor(Color.BLACK);
//TextSize you want to set
tPaint.setTextSize(50);}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawTextOnPath(QUOTE, circle, 485, 20, tPaint);}
}
}
이 그것을 밖으로 시도 사용 backgroung에 이미지로 뭔가를 원하는 경우. 그것이 당신을 도울 수 있기를 바랍니다.
http://mindtherobot.com/blog/272/android-custom-ui-making-a-vintage-thermometer/ –
[강력한 도구] (http://developer.android.com/) reference/android/graphics/Path.html) –