我有一个现有的布局,我正在设置我当前的活动。但是,我想画一条线(水平)并以慢动作向下移动。大多数文章都谈到创建自定义视图和执行 setContentView(myView)。
我怎么不想将我的活动视图设置为仅此视图。我已经做了setContentView(R.layout.main)。我只想在移动内容的基础上绘制线条。
类似于drawLine(fromX,fromY,toX,toY)然后添加一个循环,同时增加Y以显示它在运动中。
我希望我很清楚。请指出正确的方向。
谢谢
答案 0 :(得分:1)
创建一个视图,然后为其设置动画。
<View
android:id="+@id/ivHorizontalLine"
android:layout_width="match_parent"
android:layout_height="1px"
android:background="#000000" />
更改视图的高度以匹配您希望线条的粗细。以及线条颜色的背景颜色。
TranslateAnimation horizontalLineAnimation = new TranslateAnimation(0, 0, YstartPoint, YendPoint);
horizontalLineAnimation.setDuration(duration);
ivHorizontalLine.startAnimation(horizontalLineAnimation);
更改YstartPoint和YendPoint以匹配您希望线路移动到的位置。以及匹配您希望线移动速度的持续时间。
答案 1 :(得分:0)
执行此操作的最佳方法是创建一个视图,该视图占据您要在其上绘制的整个容器。不需要背景,因为它只用于在其上创建画布。一个例子是这样的:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<com.packagename.PaintView
android:id="@+id/paintView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</FrameLayout>
PaintView将是public class PaintView extends View