首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android摄像头上画一条移动的线条?

问如何在android摄像头上画一条移动的线条?
EN

Stack Overflow用户
提问于 2016-09-13 17:07:25
回答 1查看 982关注 0票数 3

我想在相机上画一条移动线,用于等待进程的结束。目前,我有这段代码:

代码语言:javascript
复制
 public class OcrGraphic extends GraphicOverlay.Graphic {

    OcrGraphic(GraphicOverlay overlayt) {
        super(overlay);
        postInvalidate();
    }

    @Override
    public void draw(Canvas canvas) {
         //draw line
    }
}

问题是我不想只画一次线,而是想创建一些类似线程的东西,以便在长过程中移动线(向上和向下)。

下面是我拥有的XML:

代码语言:javascript
复制
    <com.google.android.gms.samples.vision.ocrreader.ui.camera.CameraSourcePreview
        android:id="@+id/preview"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <com.google.android.gms.samples.vision.ocrreader.ui.camera.GraphicOverlay
            android:id="@+id/graphicOverlay"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
        <View
            android:layout_width="5dp"
            android:layout_height="1dp"
            android:background="#FF0000"
            android:id="@+id/line"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="65dp"
            android:minHeight="5dp" />

    </com.google.android.gms.samples.vision.ocrreader.ui.camera.CameraSourcePreview>

'camereSourcePreview‘标签来自google vision API。

EN

回答 1

Stack Overflow用户

发布于 2016-09-13 17:31:17

动画框架已经为您准备好了。

在布局xml文件中创建一行。像这样的东西

代码语言:javascript
复制
<View
  android:layout_width="match_parent"
  android:layout_height="1dp"
  android:background="#cccccc"
  android:id="@+id/line"/>

然后在动画资源文件夹中创建动画资源。

代码语言:javascript
复制
<set android:repeatMode="reverse"
xmlns:android="http://schemas.android.com/apk/res/android">

<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromYDelta="100%"
    android:toYDelta="0"
    android:interpolator="@android:anim/decelerate_interpolator"
    android:duration="300"
    />

​

在您的代码中,获取视图动画,并使用AnimationUtils设置动画

代码语言:javascript
复制
View line= (View) findViewById(R.id.line);
Animation upDown= AnimationUtils.loadAnimation(this, R.anim.up_down_anim);
line.startAnimation(upDown);

然后完成你可以调用的动画(这里不确定)

代码语言:javascript
复制
line.getAnimation().cancel();

https://developer.android.com/guide/topics/resources/animation-resource.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39466171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档