我不知道如何创建一个drawable并将其添加到工具栏中,如上图(红色圆圈)。该号码与今天的日期相对应。
如果您有任何想法,请帮助我。
更新 谢谢你的想法。这就是我想出来的:
创建我的自定义Drawable(例如:TextDrawable extends Drawable)
覆盖绘制(Canvas画布)方法
以编程方式将我的自定义Drawable添加到我的工具栏:
inside:onCreateOptionsMenu(菜单菜单)
menu.add(0, 0, 1, getString(R.string.jump_to_today)).setIcon(new TextDrawable("22")).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
现在,它会显示我想要的文字日期(避风港有日历背景)。我想我必须在我的绘制方法上写它。
感谢您的帮助!
答案 0 :(得分:2)
尝试在图像上书写文字......
首先,您需要一个没有文字的日历图像(在这种情况下为“22”)。然后,在图像上写入文本“22”。像这样:
Bitmap calendarBitmap = ... // Load your calendar image here
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setTextSize(10);
canvas.drawText("22", x, y, paint);
x , y 是文本在图像上的位置坐标。您还需要将 Color.BLACK 更改为图像的颜色以保持一致。
最后,你得到了calendarBitmap。
答案 1 :(得分:1)
我认为最好的方法是将您想要的图像作为日历(也许您可以在Android资源中找到它)。然后将其转换为九个补丁并将其用作TextView的背景绘制。
您可以阅读Google documentation有关创建九个补丁的信息。您将能够通过定义内容区域在文本区域中定义文本。