2016-09-22 37 views
1

Android設備無法顯示新的ios9表情符號時重新使用Android表情符號。所以,我想用ios emoji替換android emoji.using emojicon可以支持TextView和EditText。如何使用ios表情符號當使用canvas.drawText()

但是,我有一個自定義的View使用canvas.drawText()來繪製文本。這將顯示android表情符號。

如何解決這個問題?非常感謝。

Paint p = new Paint(); 
    p.setAntiAlias(true); 
    p.setStrokeWidth(r); 
    p.setColor(outerCircleColor); 
    canvas.drawCircle(centerX, centerY, outerR, p); 

    p.setColor(centerColor); 
    canvas.drawCircle(centerX, centerY, r, p); 

    p.setStrokeWidth(lineWidth); 
    p.setColor(lineColor); 
    canvas.drawLine(centerX, centerY, pointLine1Corner.x, pointLine1Corner.y, p); 
    canvas.drawLine(pointLine1Corner.x, pointLine1Corner.y, pointLine1End.x, pointLine1End.y, p); 

    p.setColor(textColor); 
    p.setTextSize(defaultTextsize); 
    canvas.drawText(displayText1, pointLine1Corner.x + defaultTextPadding, pointLine1Corner.y - defaultTextMarginBottom, p); 

回答

0

你應該使用StaticLayout繪製文本爲你而不是canvas.drawText,使用EmojiconHandleraddEmojis方法把SpannableString成字符串emojicon提供的表情符號圖標。並將SpannableString轉換爲StaticLayout並調用draw方法繪製文本

相關問題