草庐IT

custom-painting

全部标签

android - Android 中的 Paint 和 TextPaint 有什么区别?

Paint和TextPaint有什么区别?只能TextPaint将文本绘制到Canvas上吗?我最近一直在研究如何在Canvas上绘制文本,这让我想到了TextPaint。然而,在阅读thesourcecode我惊讶地发现TextPaint没有太多内容。事实上,您实际上并不需要它在Canvas上绘制文本。因此,我添加了此问答以使其更加清楚。 最佳答案 TextPaint是Paint的子类.然而,与您从这些名称中可能猜到的相反,在Canvas上绘制文本的繁重工作是由Paint完成的。因此,这TextPainttextPaint=new

android - CalendarContract.EventsColumns.CUSTOM_APP_URI 的用途是什么?

标题说明了一切:CalendarContract.EventsColumns.CUSTOM_APP_URI的用途是什么?我问是因为我正在寻找一个地方,我的应用程序可以将一些特定于应用程序的数据填充到事件表中。也许这是一个无用的问题,因为当然,我需要确保其他应用程序不会破坏我的数据。也许更好的问题是:如何将特定于应用程序的数据存储在日历事件表中? 最佳答案 如CalendarContract中所述:/***ActivityAction:Displaytheeventtotheuserinthecustomappas*specified

android - appcompat-v7 : Custom view not properly aligned in ActionBar

我正在尝试使用基于AppcompatToolbar的actionBar这是我的toolbar.xml我将其包含在我的activity.xml文件中。然后在我的Activity的OnCreate方法中,我将自定义PagerStrip设置为ActionBarActionBaractionBar=getSupportActionBar();actionBar.setCustomView(R.layout.pager_strip);actionBar.setDisplayShowCustomEnabled(true);tabs=(PagerSlidingTabStrip)actionBar.g

android - 为什么 Paint.ANTI_ALIAS_FLAG 在 Canvas 上的同一个地方绘图时似乎不起作用?

尝试使用androidCanvas在同一位置多次绘制时,抗锯齿出现问题。首先,我正在初始化paint=newPaint(Paint.ANTI_ALIAS_FLAG),然后将strokecap设置为Paint.Cap.ROUND。然后,如果我调用canvas.drawPoint(x,y,paint)一次会导致以下结果:多次调用canvas.drawPoint(x,y,paint)时(本例中为100次)导致:我用最少的代码创建了一个示例,以便在GitHub上运行它:android-canvas-antialias我注意到如果我以一定的距离绘制点,抗锯齿似乎会按预期工作(第一张图片)。但是用

java - 如何使用Paint.getTextBounds()快速获取TextView的宽高?

Paint类中有一个方法:Paint.getTextBounds()它返回被一些文本占用的Rect。但是根据this回答它返回的内容与TextView的宽度/高度不同。问题1:有没有办法使用Paint.getTextBounds()返回的Rect获取TextView的宽度和高度??请注意,我确实需要准确知道宽度/高度。我很高兴知道rect的上限可能有2-3%的误差,但它不能更大(并且应该适用于任何不依赖于屏幕分辨率和像素密度的手机)然后TextView边界Q2:是否有任何其他快速方法来确定具有指定textSize的某些文本的宽度和高度?我知道,宽度可以由Paint.measureTex

android - 在自定义 View 中设置 Paint 对象的颜色

我正在尝试创建一个自定义View,并声明了如下样式的属性:-在customview的构造函数中,这些值的获取方式如下:-circleradius=a.getInt(R.styleable.NewCircleView_radius,0);//globalvarcirclecolor=a.getColor(R.styleable.NewCircleView_circlecolor,0);//globalvarandaisthetypedarray通过如下声明xml来使用View:-在自定义View中,当我将绘画对象设置为:-thePaintObj.setColor(circlecolor)

android - 功能自定义标题 : Cannot combine custom titles on API 11 and above

我有一个项目,我设置了:minSdkversion设置为10MainActivity是一个TabActivityonCreate方法中的代码是这样的:super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);setContentView(R.layout.main);getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.custom_title);...使用之前的设置,一切正常!但是,如果我将minSdk

Android 主题实现最简单的问题 : custom per theme color

我是Android开发的初学者,尽管编码很合理,但恕我直言,android主题不是我无法执行这个简单的任务:我有(例如)一种名为“blah”的颜色#F0F0F0它在XML布局或代码中无处不在,并被不同的View组件用作“@color/blah”我只想让这个每个主题改变颜色值所以当我使用MyTheme1时,blah应该是#F0F0F0,而当我使用MyTheme2时,blah应该是#00FF00我一直在阅读有关主题的内容,但仍然无法找到如何实现这个简单的任务,因为我的应用不需要特殊样式等,只需要每个主题的颜色。提前致谢更新:在Mohamed_AbdAllah提供的链接之后,我成功地创建了一

java - 协调器布局 : View disappears with custom behavior

我是CoordinatorLayout的新手,这是我在CoordinatorLayout中遇到的一个非常奇怪的行为。我有一个ImageView(或更多特别是ImageView的一个子类,称为CircleImageView(它在此处的中心放置个人资料图片))作为的子类之一CoordinatorLayout。我已将此CircleImageView锚定到AppbarLayout(这是CoordinatorLayout的另一个子项)。这是我的整个布局:到目前为止一切顺利。我目前能够滚动AppbarLayout并且NestedScrollView会随之移动。但是,我想在我们向上滚动时将个人资料图

java - ZXing条码阅读器: How to make custom border around capture screen?

我想在zxing捕获屏幕(相机屏幕)周围放置自定义边框。我需要为此做哪些修改?我需要更改哪些Activity和布局才能产生这种效果? 最佳答案 您根本不需要编辑布局。在ViewfinderView中找到onDraw方法。它是绘制“扫描矩形”的核心。你可以按照你想要的方式修改它。可以找到实际绘制矩形的代码here://Drawtheexterior(i.e.outsidetheframingrect)darkenedpaint.setColor(resultBitmap!=null?resultColor:maskColor);can