今天這篇文章是android中實現指針滑動的動態效果,它是打開線程并控制指針所在的ImageView控件的padding屬性,下面就跟著武林技術頻道小編的步伐來學習吧!
?
??????????? <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屬性來實現滾動的動畫效果
?
?
??????? @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();
??????? }
以上就是關于android中實現指針滑動的動態效果,相信認真看完的朋友都已經懂了,看了小編的介紹之后趕快收藏起來吧!
新聞熱點
疑難解答