android 文字倾斜,TextView中文本倾斜
需求:使TextView中的文字倾斜一定的角度。如下图所示:
如何实现呢?自定义View?这可能是大多数同学产生的第一个想法。的确,自定义View可以实现这个需求。我也找过网上自定义view的方法,大多数只是继承TextView,在onDraw()方法中将画布旋转:
@Override
protected void onDraw(Canvas canvas) {
canvas.save();
canvas.translate(getCompoundPaddingLeft(), getExtendedPaddingTop());
canvas.rotate(degrees, this.getWidth() / 2f, this.getHeight() / 2f);
// canvas.rotate(degrees, 0, 0);
super.onDraw(canvas);
canvas.restore();
}
其中canvas.rotate(degrees, this.getWidth() / 2f, this.getHeight() / 2f);方法中degrees就是需要旋转的角度。
今天介绍一种更简单的方法:
View中有一个属性:rotation,可以实现旋转View。因为TextView是继承的View,所以也可以使用这个属性。
XML中设置
android:rotation="45"
java代码中设置
mTextView.setRotation(45);
View的相关源码:
/**
* Sets the degrees that the view is rotated around the pivot point. Increasing values
*设置视图围绕轴心点旋转的度数。
* result in clockwise rotation.
*顺时针旋转
* @param rotation The degrees of rotation.旋转的角度。
* @see #getRotation()
* @see #getPivotX()
* @see #getPivotY()
* @see #setRotationX(float)
* @see #setRotationY(float)
*
* @attr ref android.R.styleable#View_rotation
*/
public void setRotation(float rotation) {
if (rotation != getRotation()) {
// Double-invalidation is necessary to capture view's old and new areas
invalidateViewProperty(true, false);
mRenderNode.setRotation(rotation);
invalidateViewProperty(false, true);
invalidateParentIfNeededAndWasQuickRejected();
notifySubtreeAccessibilityStateChangedIfNeeded();
}
}
其实,其他继承View的控件都可以使用这个属性进行旋转。并不影响自身的点击事件。
android 文字倾斜,TextView中文本倾斜相关推荐
- android 获取布局textview,android – 获取TextView中文本的位置
看看几个Paint方法: getTextBounds()和 measureText.我们可以使用它们来确定TextView中文本的偏移量.确定TextView中的偏移后,我们可以将其添加到TextVi ...
- android textview坐标,android – 获取TextView中文本的位置
看看几个Paint方法: getTextBounds()和 measureText.我们可以使用它们来确定TextView中文本的偏移量.确定TextView中的偏移后,我们可以将其添加到TextVi ...
- TextView 中文本内容换行
一.实现TextView中文本换行 1.在res/valus/string.xml 中定义字符串,字符串中添加\n就可以实现换行. 2.解析来自服务端的xml文件,出现在xml文件中含有\n的文本, ...
- android 文本框输入 默认文字居中,Android系统。 TextView中的文本垂直居中
我有一个ViewGroup类,它可以添加自定义视图并在画布上绘制饼图.在圆圈的中心,我有一个TextView.但无论我做什么,我都无法将TextView中的文本垂直居中. 在这种情况下,Root视图是 ...
- android textview 文字居中无效,android – 不能垂直居中textview的文本
[已解决]我不得不向ScrollView添加 android:fillViewport ="true",修复了文本没有垂直居中的问题. 我知道之前已经多次回答,但我仍然无法垂直居中 ...
- Android 在同一个TextView中展示不同颜色、不同字体大小
同一个TextView中展示不同颜色 xml代码片段 <androidx.appcompat.widget.AppCompatTextViewandroid:id="@+id/tang ...
- android textview图片,Android如何在TextView中显示图片
大家好,今天和大家分享如何在TextView中加入图片的功能,有两种方式,第一种是继承TextView实现图片通过重写来实现图片的显示功能,第二种是利用现成的api实现图片的显示功能.我们知道Text ...
- Android之如何设置TextView中不同字段的字体颜色
在这里先看看效果图: OK,有时候,在我们的项目中会要求TextView中文本有一部分的字体颜色不一样,这时我们应该使用 SpannableStringBuilder这个工具类,当然这个类的功能很强大 ...
- 一起学android之怎样设置TextView中不同字段的字体颜色(22)
在这里先看看效果图: OK,有时候,在我们的项目中会要求TextView中文本有一部分的字体颜色不一样.这时我们应该使用 SpannableStringBuilder这个工具类,当然这个类的功能非常强 ...
最新文章
- URLEncoder和URLDecoder中特殊字符的处理方案 URL传值问题
- 信标组的磁标安装长度
- 用python画爱心-python画一个玫瑰和一个爱心
- C++ string清空并释放内存空间的两种方法(shrink_to_fit()、swap())
- 如何在终端下截取一个完整长度的网页截图
- 毕业论文管理系统——面向对象方法
- (转)深入理解Java的接口和抽象类
- 无法定位程序输入点 InitializeCriticalSectionEx 于动态链接库 Kernel32.dll 上 问题解决方法
- 被知乎反杀,是一种什么体验?
- SNMP Trap调试记录
- 数学分析典型方法pdf下载_硬质合金刀具常识及使用方法 pdf下载 0700
- wav转换mp3简单图文教程
- python实现Content-Type:application/octet-stream
- 微信开放平台修改微信分享的小图标后,移动端显示的分享的小图标未改变的问题解决
- QT: Linux下-错误提示cannot find -lGL
- 前端程序员的日常与心酸
- 电视行业迎来市场“拐点” TCL曲面电视表现最为抢眼
- 亲测绝对有用,,电脑不显示可连接WiFi列表,无法连接WiFi的解决办法。
- openssl 交叉编译 armv7内核
- InfiniBand 网络
热门文章
- 拆掉思维里的墙读书笔记
- Python使用tkinter库制作带有Laber标签、Entry文本框、Progressbar进度条、text日志框等元素的GUI操作界面
- ctfshow密码easyrsa5
- python tensorflow车型识别(一):建立数据
- 【工欲善其事必先利其器】论文编辑及文献管理(Endnote,Latex,JabRef ,overleaf)资源下载及使用指南
- Windows 10 运行python弹出windows应用商店
- 矩阵关于26的模逆matlab,给定加密矩阵在模运算下的逆矩阵.ppt
- windows server 2016 活动目录部署系列(十一)AD域控上安装证书服务器
- [转载] 支持支付宝付款的四大国外主机
- 2022-2028全球房地产众筹平台行业调研及趋势分析报告