<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      讓一張圖片隨著手指的移動而移動

      比較簡單就直接上代碼了

        1 package cn.itcast.mobilesafe;
        2 
        3 import android.app.Activity;
        4 import android.content.SharedPreferences;
        5 import android.content.SharedPreferences.Editor;
        6 import android.os.Bundle;
        7 import android.os.Environment;
        8 import android.util.Log;
        9 import android.view.Display;
       10 import android.view.MotionEvent;
       11 import android.view.View;
       12 import android.view.View.OnClickListener;
       13 import android.view.View.OnTouchListener;
       14 import android.widget.EditText;
       15 import android.widget.FrameLayout;
       16 import android.widget.ImageView;
       17 import android.widget.RelativeLayout;
       18 import android.widget.RelativeLayout.LayoutParams;
       19 import android.widget.TextView;
       20 
       21 public class DragViewActiviy extends Activity {
       22     protected static final String TAG = "DragViewActiviy";
       23     private ImageView iv_dragview_location;
       24     private Display display;
       25     private TextView tv_dragview;
       26     private long firstTime;
       27     private SharedPreferences sp;
       28     @Override
       29     protected void onCreate(Bundle savedInstanceState) {
       30 
       31         super.onCreate(savedInstanceState);
       32         display = getWindowManager().getDefaultDisplay();
       33         sp = getSharedPreferences("config", MODE_PRIVATE);
       34         setContentView(R.layout.drag_view);
       35         iv_dragview_location = (ImageView) findViewById(R.id.iv_dragview_location);
       36         tv_dragview = (TextView) findViewById(R.id.tv_dragview);
       37         
       38         
       39         int lastx = sp.getInt("lastx", 0);
       40         int lasty = sp.getInt("lasty", 0);
       41         //只有當ui被完全渲染出來的時候 執行才有用.
       42         //iv_dragview_location.layout(l, t, r, b);
       43         //在oncreate方法里面 控件的位置 和大小現在還沒有被計算顯示出來.
       44         
       45         //在布局渲染的第一個階段進行的.
       46         RelativeLayout.LayoutParams params = (LayoutParams) iv_dragview_location.getLayoutParams();
       47         params.leftMargin = lastx;
       48         params.topMargin = lasty;
       49         iv_dragview_location.setLayoutParams(params);
       50         
       51         iv_dragview_location.setOnClickListener(new OnClickListener() {
       52 
       53             public void onClick(View v) {
       54                 Log.i(TAG, "哥被點擊了");
       55                 if (firstTime > 0) {// 已經點擊過了
       56                     long secondTime = System.currentTimeMillis();
       57                     long dtime = secondTime - firstTime;
       58                     if (dtime < 500) {
       59                         Log.i(TAG, "雙擊事件");
       60                         int tv_width = iv_dragview_location.getRight()
       61                                 - iv_dragview_location.getLeft();
       62                         int widowwidth = display.getWidth();
       63                         iv_dragview_location.layout(widowwidth / 2 - tv_width
       64                                 / 2, iv_dragview_location.getTop(), widowwidth
       65                                 / 2 + tv_width / 2,
       66                                 iv_dragview_location.getBottom());
       67 
       68                         int lastx = iv_dragview_location.getLeft();
       69                         int lasty = iv_dragview_location.getTop();
       70                         Editor editor = sp.edit();
       71                         editor.putInt("lastx", lastx);
       72                         editor.putInt("lasty",lasty);
       73                         editor.commit();
       74                         
       75                         
       76                     }
       77                 }
       78 
       79                 firstTime = System.currentTimeMillis();
       80                 new Thread() {// 單擊的超時處理
       81                     public void run() {
       82                         try {
       83                             Thread.sleep(500);
       84                             firstTime = 0;
       85                         } catch (InterruptedException e) {
       86                             // TODO Auto-generated catch block
       87                             e.printStackTrace();
       88                         }
       89                     };
       90                 }.start();
       91 
       92             }
       93         });
       94 
       95         iv_dragview_location.setOnTouchListener(new OnTouchListener() {
       96 
       97             int startX;// 記錄第一次手指在窗體中的位置.
       98             int startY;
       99 
      100             public boolean onTouch(View v, MotionEvent event) {
      101 
      102                 switch (event.getAction()) {
      103                 case MotionEvent.ACTION_DOWN:
      104                     Log.i(TAG, "摸到");
      105                     startX = (int) event.getRawX();
      106                     startY = (int) event.getRawY();
      107 
      108                     break;
      109                 case MotionEvent.ACTION_MOVE:
      110                     Log.i(TAG, "移動");
      111                     int movedX = (int) event.getRawX();
      112                     int movedY = (int) event.getRawY();
      113                     int dx = movedX - startX;
      114                     int dy = movedY - startY;
      115                     // 立刻的更新 imageview在窗體中的位置.
      116                     int l = iv_dragview_location.getLeft();
      117                     int t = iv_dragview_location.getTop(); // 得到imageview在窗體中上面的坐標
      118                     int r = iv_dragview_location.getRight();
      119                     int b = iv_dragview_location.getBottom();
      120                     int tv_height = tv_dragview.getBottom()
      121                             - tv_dragview.getTop();
      122 
      123                     if (t > (display.getHeight() / 2)) {// imageview 移動到了屏幕的下面
      124                         // 更新 textview 設置在屏幕的上面
      125                         tv_dragview.layout(tv_dragview.getLeft(), 0,
      126                                 tv_dragview.getRight(), tv_height);
      127 
      128                     } else {
      129                         // 更新 textview 設置在屏幕的下面
      130                         tv_dragview.layout(tv_dragview.getLeft(),
      131                                 display.getHeight() - tv_height - 15,
      132                                 tv_dragview.getRight(),
      133                                 display.getHeight() - 15);
      134                     }
      135                     int newl = l + dx;
      136                     int  newr = r +dx;
      137                     int  newt = t+dy;
      138                     int newb = b+dy;
      139                     if(newl < 0|| newr > display.getWidth() || newt < 0 || newb >display.getHeight()){
      140                         break;
      141                     }
      142                     
      143                     
      144                     iv_dragview_location.layout(newl, newt, newr, newb);// 更新了iv在窗體中的位置
      145 
      146                     // 重新記錄新的手指的初始位置.
      147                     startX = (int) event.getRawX();
      148                     startY = (int) event.getRawY();
      149 
      150                     break;
      151                 case MotionEvent.ACTION_UP:
      152                     Log.i(TAG, "放手");
      153                     int lastx = iv_dragview_location.getLeft();
      154                     int lasty = iv_dragview_location.getTop();
      155                     Editor editor = sp.edit();
      156                     editor.putInt("lastx", lastx);
      157                     editor.putInt("lasty",lasty);
      158                     editor.commit();
      159                     break;
      160 
      161                 }
      162 
      163                 return false;// 是否消費掉這個事件
      164             }
      165         });
      166 
      167     }
      168 }

       

      posted @ 2013-01-31 11:17  王世楨  閱讀(528)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 成年无码av片在线蜜芽| 99精品久久久中文字幕| 日韩精品一区二区午夜成人版| 久久91精品牛牛| 亚洲高清av一区二区| 粉嫩jk制服美女啪啪| av在线播放国产一区| 自拍偷自拍亚洲精品播放| 成人午夜在线观看日韩| 亚洲sm另类一区二区三区| 久久这里只精品热免费99| 中文字幕亚洲综合第一页| 亚洲精品无码你懂的网站| 亚洲成色精品一二三区| 全免费A级毛片免费看无码| 又湿又紧又大又爽A视频男| 精品无码专区久久久水蜜桃| 国模肉肉视频一区二区三区| 免费十八禁一区二区三区| 免费无码一区无码东京热| 午夜综合网| 人妻中文字幕一区二区视频 | 青青草无码免费一二三区| 亚洲欧洲色图片网站| 激情国产一区二区三区四区| 国内精品久久久久影院不卡| 国产亚洲AV电影院之毛片| 色偷偷天堂av狠狠狠在| 色 亚洲 日韩 国产 综合| 国产欧美综合在线观看第十页| 天堂www在线中文| 国产一级三级三级在线视 | 久久夜色精品亚洲国产av| 成人午夜无人区一区二区| 亚洲综合在线一区二区三区 | 国产精品久久中文字幕| 国产a在视频线精品视频下载| 少妇人妻偷人精品视蜜桃| 伊人成人在线视频免费| 麻豆a级片| 成人免费无遮挡在线播放|