Android Wear 图片滚动条

标签 android android-studio wear-os watch watch-face-api

我正在 Android Studio 上使用示例秒针、小时和分钟自动收报机/时钟指针作为示例表盘。其中,Canvas 类的画线方法与 startX、startY、stopX 和 stopY 一起使用。我的问题是如何使用图片类似地实现这一点?我想到使用drawBitmap,它只有左侧和顶部,因此它旋转但范围太大并且不像手那样到位。 有没有办法使用图像而不是像drawLine方法中那样的线条?最重要的是,我需要使用图像而不是线条作为时钟指针。

谢谢!

最佳答案

您应该使用Canvas.saveCanvas.rotateCanvas.restore。想象一下,您总是在同一个位置绘制东西,但底层 Canvas 正在旋转,因此您将在正确的位置绘制。考虑一下圣诞老人追踪者的例子:

for (int i = 0; i < mCloudBitmaps.length; i++) {
    canvas.save();
    canvas.rotate(mCloudDegrees[i], centerX, centerY);
    float r = centerX - (timeElapsed / (mCloudSpeeds[i])) % centerX;
    mCloudFilterPaints[i].setAlpha((int) (r / centerX * 255));
    canvas.drawBitmap(mCloudBitmaps[i], centerX, centerY - r,
        mCloudFilterPaints[i]);
    canvas.restore(); 
}

它不会绘制手,而是绘制表盘上的云,但它应该为您提供一个示例,说明您需要尝试做什么。

关于Android Wear 图片滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27869971/

相关文章:

android-studio - 多行文本缩小到 Android Studio 3 的左上角

java - Android Wear 2.0 的请求 - 响应 API?

android - 如何在 Android Studio 上生成类图 (UML) (IntelliJ Idea)

项目依赖中jar的Android "has already been added to output"错误

android - 如何在Sync Adapter onPerformSync 方法中访问新添加的联系人?

android - 工具 :listitem for custom view extending RecyclerView

android - 触发心率检查的语音命令列表

wear-os - 以编程方式确定Android Wear中的屏幕形状

Android Studio 无法构建 Google Protobuf 生成的文件

android - Delight-im 高级 webview 在每个 GET 和 POST 请求中发送自定义 header