zoukankan      html  css  js  c++  java
  • 安卓学习第25课——imageswitcher

    使用ImageSwitcher,实现渐变效果更换图片

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:orientation="vertical"
        android:gravity="center_horizontal">
    
        <GridView
            android:id="@+id/gridView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:horizontalSpacing="2pt"
            android:verticalSpacing="2pt"
            android:gravity="center"
            android:numColumns="4" >
        </GridView>
        <ImageSwitcher
            android:id="@+id/imageSwitcher1"
            android:layout_width="300dp"
            android:layout_height="300dp"
            android:layout_gravity="center_horizontal"
            android:inAnimation="@android:anim/fade_in"
            android:outAnimation="@android:anim/fade_out"
             >
        </ImageSwitcher>
     
    </LinearLayout>
    package com.example.imageswitcher;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.ViewGroup.LayoutParams;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.AdapterView.OnItemSelectedListener;
    import android.widget.GridView;
    import android.widget.ImageSwitcher;
    import android.widget.ImageView;
    import android.widget.SimpleAdapter;
    import android.widget.ViewSwitcher.ViewFactory;
    
    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
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            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);
            }
            switcher=(ImageSwitcher) findViewById(R.id.imageSwitcher1);
            switcher.setFactory(new ViewFactory(){
    
                @Override
                public View makeView() {
                    ImageView imageView=new ImageView(MainActivity.this);
                    imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
                    imageView.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
                    return imageView;
                }
                
            });
            SimpleAdapter simpleAdapter=new SimpleAdapter(this, listItems, R.layout.cell, new String[]{"image"}, new int[]{R.id.image1});
        GridView grid=(GridView) findViewById(R.id.gridView);
        grid.setAdapter(simpleAdapter);
        grid.setOnItemSelectedListener(new OnItemSelectedListener(){
    
            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int position, long id) {
                switcher.setImageResource(imageIds[position]);
            }
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
            }
            
        });
        grid.setOnItemClickListener(new OnItemClickListener(){
    
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position,
                    long id) {
                switcher.setImageResource(imageIds[position]);
            }});
        }
    }

  • 相关阅读:
    浅析JNI
    网易云音乐歌词下载器
    如何用一个SQL“搞挂”一个服务模块
    SpingBoot 1.5.2,MultipartFile保存图片时的不稳定异常(好像和内置tomcat有关)
    double 去除小数点后的0
    项目中时间处理----今天:时分(10:15),昨天/前天:(昨天/前天),除此之外的本周(星期几),再往前年.月.日(2017.06.15)
    SpringMvc 静态内部类 封装请求数据
    jsp页面 ajax提交数组 到struts2的action
    Struts2 s:if test判断时遇到的问题
    Struts2中 iterator隔行变色
  • 原文地址:https://www.cnblogs.com/Yvettey-me/p/3967093.html
Copyright © 2011-2022 走看看