国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android編程實現大圖滾動顯示的方法

2019-12-12 04:53:20
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程實現大圖滾動顯示的方法。分享給大家供大家參考,具體如下:

問題:

我有一張比較大的圖片,比如長寬都是屏幕的兩倍大小,我想實現的功能是首先將圖片居中顯示,由于圖片太大顯然只能顯示一部分,然后可以通過拖動,實現圖片的平滑滾動(既看不出來滾動刷新痕跡)。

就像google地圖一樣,如果用mapView這個控件,那么可以在屏幕上拖動整個地圖,但是由于地圖信息量太大,如果一次拖動過快,那么屏幕會暫時顯示出一些刷新痕跡(灰白的格子)。

想使用mapView來加載已有圖片,但是沒有成功,后來也使用了Srollview控件,和最常用的imageView,還是沒有成功。

解決:

經過大量查資料,使用imageView配合onTouch事件,可以解決。

關鍵代碼:

布局文件中imageView控件如下

<ImageView  android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/img"  android:scaleType="center"  android:background="#fff"  android:src="@drawable/picName"/>

Activity文件中主要代碼如下

@Overridepublic void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.xml_name_layout);  final ImageView switcherView = (ImageView) this.findViewById(R.id.img);  switcherView.setOnTouchListener(new View.OnTouchListener() {    public boolean onTouch(View arg0, MotionEvent event) {      float curX, curY;      switch (event.getAction()) {        case MotionEvent.ACTION_DOWN:          mx = event.getX();          my = event.getY();          break;        case MotionEvent.ACTION_MOVE:          curX = event.getX();          curY = event.getY();          switcherView.scrollBy((int) (mx - curX), (int) (my - curY));          mx = curX;          my = curY;          break;        case MotionEvent.ACTION_UP:          curX = event.getX();          curY = event.getY();          switcherView.scrollBy((int) (mx - curX), (int) (my - curY));          break;      }      return true;    }  });}

實現效果如下:

原圖:

模擬器里效果:

更多關于Android相關內容感興趣的讀者可查看本站專題:《Android圖形與圖像處理技巧總結》、《Android開發入門與進階教程》、《Android調試技巧與常見問題解決方法匯總》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結》、《Android視圖View技巧總結》、《Android布局layout技巧總結》及《Android控件用法總結

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广昌县| 东台市| 罗山县| 姚安县| 曲麻莱县| 夏邑县| 齐齐哈尔市| 舟曲县| 洪湖市| 荥阳市| 大连市| 富源县| 天门市| 连山| 陇川县| 随州市| 裕民县| 武宁县| 揭东县| 农安县| 临沭县| 阳西县| 晋州市| 弋阳县| 巫山县| 红河县| 博乐市| 盘锦市| 马龙县| 科技| 三明市| 蓬莱市| 嘉义市| 玉林市| 托克托县| 特克斯县| 天台县| 梅河口市| 乃东县| 巴南区| 泸西县|