android中实现指针滑动的动态效果方法_安卓软件开发教程-查字典教程网
android中实现指针滑动的动态效果方法
android中实现指针滑动的动态效果方法
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:上面这段代码实现的布局为首先,因为指针有压着下面的滚动条,因此这是一个framelayout的布局。其次,要实现指针的匀速...

复制代码 代码如下:

<FrameLayout

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:background="#fff"

android:paddingBottom="5dp"

android:paddingLeft="5dp"

android:paddingRight="2dp"

>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="right"

android:src="@drawable/up_icon"

android:layout_marginTop="0dp"

android:paddingTop="0dp" />

<LinearLayout

android:layout_width="240dip"

android:layout_height="wrap_content"

android:layout_marginLeft="5dp"

android:layout_marginRight="7dp"

android:orientation="horizontal" >

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="left"

android:text="优"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="left"

android:text="良"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="left"

android:text="中等"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="left"

android:text="不健康"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="left"

android:text="有毒害"

android:textSize="12sp" />

</LinearLayout>

<LinearLayout

android:layout_width="240dip"

android:layout_height="wrap_content"

android:layout_marginLeft="5dp"

android:layout_marginRight="7dp"

android:layout_marginTop="40dp"

android:orientation="horizontal" >

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center_horizontal"

android:text="80"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center_horizontal"

android:text="120"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center_horizontal"

android:text="160"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center_horizontal"

android:text="200"

android:textSize="12sp" />

<TextView

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center_horizontal"

android:text="400"

android:textSize="12sp" />

</LinearLayout>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="10dp"

android:layout_marginTop="10dp"

android:src="@drawable/zhizhen"

android:id="@+id/zhizhen"/>

<ImageView

android:id="@+id/dengji_img"

android:layout_width="250dip"

android:layout_height="wrap_content"

android:layout_marginTop="25dp"

android:src="@drawable/dengji_icon" />

</FrameLayout>

上面这段代码实现的布局为

首先,因为指针有压着下面的滚动条,因此这是一个framelayout的布局。其次,要实现指针的匀速滚动,需要开启一个线程,在线程中能够实现利用循环,以及线程的休眠,通过控制指针所在图标的padding属性来实现滚动的动画效果

复制代码 代码如下:

Handler myHandler =new Handler(){

@Override

public void handleMessage(Message msg) {

// TODO Auto-generated method stub

super.handleMessage(msg);

//对于c的更改和循环应该是在线程中跑,要不run仅仅执行一次,

zhizhen.setPadding(c, 0, 0, 0);

}

};

class MyThread extends Thread{

@Override

public void run() {

//发送一个消息,通知主线程改变UI

try {

while(c<=input){

c=c+1;

this.sleep(10);

myHandler.sendEmptyMessage(0);

}

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新安卓软件开发学习
    热门安卓软件开发学习
    编程开发子分类