有关Android自定义TextView基准线问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有关Android自定义TextView基准线问题相关的知识,希望对你有一定的参考价值。

参考技术A 在自定义View的过程中canvas.drawText(mText,0,y,mPaint);很容易出现字体不能完全漏出的问题,y的值其实不是距离画布的距离,这个y是基准线的距离,所以在绘制的过程中一定要求得正确的基准线。所以在draw的过程中首先要计算好基准线的y

Paint.FontMetricsInt fontMetrics = p.getFontMetricsInt();

p.descent,  //底部文本的最低点距离基准线的y值(正数)

p.ascent,  //顶部文本的最高点距离及基准线的y值(负数)

带有旋转,放大,缩小和移动在android中的自定义textview?

【中文标题】带有旋转,放大,缩小和移动在android中的自定义textview?【英文标题】:Custom textview with rotate, zoom in,zoom out and move on touch in android? 【发布时间】:2015-05-04 02:32:26 【问题描述】:

有没有朋友在 android 中拥有像 http://judepereira.com/blog/multi-touch-in-android-translate-scale-and-rotate/ 这样的 MutiTouch Image View 这样的带有旋转、放大、缩小和移动功能的自定义文本视图? 我想要完全像这个屏幕截图。 1. 在那个屏幕上画简单的文字。 2. 在该屏幕中,当我缩放此视图时,文本自动换行。 3. 在该屏幕上移动文本视图。 4. 在该屏幕中旋转文本。 所有这些功能都在 TextView touch 上完成。

【问题讨论】:

由于您正在链接到一个库/代码来满足您的需求,这似乎是什么问题? @Alex 我想要和我提供的那个链接完全一样,但是在这个链接中有 ImageView 并且我想要这个用于 TextView。 嗨@ravi152,你的项目完成了吗? 没有@biswajitGhosh 我仍然努力解决这个问题 嘿@ravi152,你收到这个问题了吗? 【参考方案1】:

我用https://github.com/jcmore2/Collage实现了一个旋转的textview

但我更改了整个代码,因为该插件适用于图像 CardView 扩展了 ImageView 我更改为 MyCardView extends RelativeLayout 然后删除了所有与图像相关的代码 而不是使用 collage.createCollageResources(listRes); 我在自己的 CollageView 类中创建了自己的函数

public void createCollage(List<MyCardView> list) 
    for (MyCardView layout : list) 
        addCard(layout);
    

现在在 Activity 中,您可以向 collageview 添加完整的 RelativeLayout 及其子级,而不仅仅是图像

这也将允许处理单个视图或多个.. TextView 或其他任何东西.. 最后这将使视图不仅可以旋转,而且可以通过多点触控手势进行拖动和缩放。

【讨论】:

嘿,你能提供 textview 的代码吗?我真的被困在这里面了【参考方案2】:

是的,您可以创建它,请参见下图并关注Here.

ImageView:添加ImageView

    // add a stickerImage to canvas
    StickerImageView iv_sticker = new StickerImageView(MainActivity.this);
    iv_sticker.setImageDrawable(getResources().getDrawable(R.drawable.c10));
    canvas.addView(iv_sticker);

TextView:添加TextView

    // add a stickerText to canvas
    StickerTextView tv_sticker = new StickerTextView(MainActivity.this);
    tv_sticker.setText("nkDroid");
    canvas.addView(tv_sticker);

但是,构建这个做得很棒。

【讨论】:

链接打不开。

以上是关于有关Android自定义TextView基准线问题的主要内容,如果未能解决你的问题,请参考以下文章

Android:隐藏自定义TextView的文本

android在textview中自定义文本[重复]

将字体添加到自定义 Android TextView

在 Android 的自定义适配器中设置 Textview 的文本的问题

Android:带有自定义标题的圆角TextView XML布局

[bug修复方案分享]ImageSpan居中问题