生活随笔
收集整理的這篇文章主要介紹了
基于图像切换器(imageSwitcher)的支持动画的图片浏览器
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
利用GridView和ImageSwitcher的基本用法
| public class MainActivity extends Activity { int[] imageIds = new int[] {R.drawable.bomb5,R.drawable.bomb6,R.drawable.bomb7,R.drawable.bomb8, R.drawable.bomb9,R.drawable.bomb10,R.drawable.bomb11,R.drawable.bomb12, R.drawable.bomb13,R.drawable.bomb14, R.drawable.bomb15,R.drawable.bomb16 }; ImageSwitcher switcher; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // 創(chuàng)建一個(gè)List對(duì)象,List對(duì)象的元素是Map List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>(); for (int i = 0; i < imageIds.length; i++) { Map<String, Object> listItem = new HashMap<String, Object>(); listItem.put("image", imageIds[i]); listItems.add(listItem); } // 獲取顯示圖片的ImageSwitcher switcher = (ImageSwitcher) findViewById(R.id.switcher); // 為ImageSwitcher設(shè)置圖片切換的動(dòng)畫(huà)效果 switcher.setFactory(new ViewSwitcher.ViewFactory() { @Override public View makeView() { // 創(chuàng)建ImageView對(duì)象 ImageView imageView = new ImageView(MainActivity.this); imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); imageView.setLayoutParams(new ImageSwitcher.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)); // 返回ImageView對(duì)象 return imageView; } }); // 創(chuàng)建一個(gè)SimpleAdapter SimpleAdapter simpleAdapter = new SimpleAdapter(this, listItems // 使用/layout/cell.xml文件作為界面布局 , R.layout.cell, new String[]{"image"}, new int[] { R.id.image1 }); GridView grid = (GridView) findViewById(R.id.grid01); // 為GridView設(shè)置Adapter grid.setAdapter(simpleAdapter); // 添加列表項(xiàng)被選中的監(jiān)聽(tīng)器 grid.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // 顯示當(dāng)前被選中的圖片 switcher.setImageResource(imageIds[position]); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); // 添加列表項(xiàng)被單擊的監(jiān)聽(tīng)器 grid.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // 顯示被單擊的圖片 switcher.setImageResource(imageIds[position]); } }); } } |
?
XML文件
| <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal"> <!-- 定義一個(gè)GridView組件 --> <GridView android:id="@+id/grid01" android:layout_width="match_parent" android:layout_height="wrap_content" android:horizontalSpacing="2dp" android:verticalSpacing="2dp" android:numColumns="4" android:gravity="center"/> <!-- 定義一個(gè)ImageSwitcher組件 --> <ImageSwitcher android:id="@+id/switcher" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:inAnimation="@android:anim/fade_in" android:outAnimation="@android:anim/fade_out"/> </LinearLayout> ? <?xml version="1.0" encoding="UTF-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:padding="4dp"> <ImageView android:id="@+id/image1" android:layout_width="50dp" android:layout_height="50dp" /> </LinearLayout> |
?
效果
轉(zhuǎn)載于:https://www.cnblogs.com/wwjldm/p/6930495.html
總結(jié)
以上是生活随笔為你收集整理的基于图像切换器(imageSwitcher)的支持动画的图片浏览器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。