FragmentPagerAdapter图片轮播小圆点跟随传值

Android ViewPager实现圆点导航左右滑动和Fragment页面切换 并实例利用ViewPager,PagerAdapter和OnPageChangeListener实现圆点导航左右滑动效果,并实现了被滑动界面处理控件事件,同时通过Fragment实现两个页面切换效果 立即下载

布局页面

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

     <android.support.v4.view.ViewPager
        android:layout_weight="1"
        android:id="@+id/viewpager"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:text="TextView" />


    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:checked="true"
            android:layout_weight="1"
            android:gravity="center"
            android:button="@null"
            android:text="首页" />

        <RadioButton
            android:id="@+id/radio1"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:button="@null"
            android:text="分类" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:button="@null"
            android:text="我的" />
    </RadioGroup>



</LinearLayout>

MainActivity界面

public class MainActivity extends FragmentActivity {
    private ViewPager vPager;
    private RadioGroup rGroup;
    private RadioButton rdio0;
    private RadioButton rdio1;
    private RadioButton rdio2;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //获取控件
        rGroup = (RadioGroup) findViewById(R.id.radioGroup1);
        rdio0 = (RadioButton) findViewById(R.id.radio0);
        rdio1 = (RadioButton) findViewById(R.id.radio1);
        rdio2 = (RadioButton) findViewById(R.id.radio2);

        vPager = (ViewPager) findViewById(R.id.viewpager);

        MyfPAdapter adapter= new MyfPAdapter(getSupportFragmentManager());
        vPager.setAdapter(adapter);


//      默认背景颜色
        rdio0.setBackgroundColor(Color.RED);
        rdio1.setBackgroundColor(Color.BLUE);
        rdio2.setBackgroundColor(Color.BLUE);


//      默认选择颜色
        vPager.setOnPageChangeListener(new OnPageChangeListener() {

            @Override
            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub
                switch (arg0) {
                case 0:
                    rdio0.setBackgroundColor(Color.RED);
                    rdio1.setBackgroundColor(Color.BLUE);
                    rdio2.setBackgroundColor(Color.BLUE);

                    break;

                case 1:
                    rdio1.setBackgroundColor(Color.RED);
                    rdio0.setBackgroundColor(Color.BLUE);
                    rdio2.setBackgroundColor(Color.BLUE);

                    break;
                case 2:
                    rdio2.setBackgroundColor(Color.RED);
                    rdio1.setBackgroundColor(Color.BLUE);
                    rdio0.setBackgroundColor(Color.BLUE);

                    break;

                default:
                    break;
                }

            }

            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub

            }
        });
//      点击按钮切换fragment页面
        rGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
                // TODO Auto-generated method stub
                switch (checkedId) {
                case R.id.radio0:
                    vPager.setCurrentItem(0);
                    break;
                case R.id.radio1:
                    vPager.setCurrentItem(1);
                    break;
                case R.id.radio2:
                    vPager.setCurrentItem(2);
                    break;

                default:
                    break;
                }

            }
        });




    }

}

fragment传值:
fragment1:

lv.setOnItemClickListener(new OnItemClickListener() {

            private TextView text;

            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                // TODO Auto-generated method stub
//              调用公共方法传值
                Fragment_textview fragment_t = (Fragment_textview) getActivity()
                        .getSupportFragmentManager().findFragmentById(
                                R.id.framelayout2);
                fragment_t.setmsg(list.get(position));


//              bytag传值
                // FragmentActivity activity = getActivity();
                // text
                // =(TextView)activity.getSupportFragmentManager().findFragmentByTag("2").getView().findViewById(R.id.f2_textView1);
                // text.setText(list.get(position));
            }
        });

fragment2:

//  修改值方法
    public void  setmsg(String msg) {

        text.setText(msg);

    }

轮播页面:

public class Fragment3 extends Fragment {

    private View view;
    private ViewPager vpager;

    // 轮播自动
    Handler handler = new Handler() {
        public void handleMessage(android.os.Message msg) {
            if (msg.what == 1) {
                // 获取当前页面
                int item = vpager.getCurrentItem();
                item++;
                // 设置页面
                vpager.setCurrentItem(item);

                handler.sendEmptyMessageDelayed(1, 1500);

            }

        };

    };

    private LinearLayout linearlyout;
    private ImageView imageView;
    private LayoutParams params;

    private List<Integer> list;
    private List<ImageView> list_imag;

    /*
     * (non-Javadoc)
     * 
     * @see
     * android.support.v4.app.Fragment#onCreateView(android.view.LayoutInflater,
     * android.view.ViewGroup, android.os.Bundle)
     */
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.fragment_3, container, false);
        // 图片集合、不能放全局
        list = new ArrayList<Integer>();
        // 小点图像集合
        list_imag = new ArrayList<ImageView>();

        vpager = (ViewPager) view.findViewById(R.id.f3_viewpager);
        // 线性布局
        linearlyout = (LinearLayout) view.findViewById(R.id.f3_linearlyout);

        return view;
    }

    /*
     * (non-Javadoc)
     * 
     * @see android.support.v4.app.Fragment#onActivityCreated(android.os.Bundle)
     */
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onActivityCreated(savedInstanceState);
        // 添加数据
        list.add(R.drawable.mm);
        list.add(R.drawable.mm1);
        list.add(R.drawable.mm2);
        list.add(R.drawable.mm3);

        MypagerAdapter adapter = new MypagerAdapter(list, getActivity());
        vpager.setAdapter(adapter);
        //设置最大值
        vpager.setCurrentItem(list.size() * 1000);
        // 监听vpager
        vpager.setOnPageChangeListener(new OnPageChangeListener() {

            @Override
            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub

                // 改变小点颜色

                for (int i = 0; i < list_imag.size(); i++) {

                    if (arg0 % list_imag.size() == i) {
                        list_imag.get(i).setImageResource(R.drawable.shape_yes);
                    } else {
                        list_imag.get(i).setImageResource(R.drawable.shape_no);
                    }

                }

            }

            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub

            }
        });

        handler.sendEmptyMessageDelayed(1, 1500);
        // 置空圆点集合  必须
        if (list_imag != null) {
            list_imag.clear();

            // 小圆点动态添加
            for (int i = 0; i < list.size(); i++) {

                imageView = new ImageView(getActivity());
//              设置颜色
                if (i == 0) {
                    imageView.setImageResource(R.drawable.shape_yes);
                } else {
                    imageView.setImageResource(R.drawable.shape_no);
                }

                // 小点的宽高
                params = new LayoutParams(15, 15);
                // 小点间距
                params.setMargins(10, 0, 10, 20);

                list_imag.add(imageView);
//              加入到线性布局
                linearlyout.addView(imageView, params);

            }

        }

    }





    /*
     * (non-Javadoc)
     * 
     * @see android.support.v4.app.Fragment#onPause() 失去焦点时调用
     */
    @Override
    public void onPause() {
        // TODO Auto-generated method stub

        // 把handler里面的消息清空
        handler.removeCallbacksAndMessages(null);



        super.onPause();
    }

}

适配器:

public class MypagerAdapter extends PagerAdapter {
    List<Integer> list;
    Context ctx;


    public MypagerAdapter(List<Integer> list, Context ctx) {
        super();
        this.list = list;
        this.ctx = ctx;
    }

    /* (non-Javadoc)
     * @see android.support.v4.view.PagerAdapter#getCount()
     */
    @Override
    public int getCount() {
        // TODO Auto-generated method stub
//      设置最大长度
        return Integer.MAX_VALUE;
    }

    /* (non-Javadoc)
     * @see android.support.v4.view.PagerAdapter#isViewFromObject(android.view.View, java.lang.Object)
     */
    @Override
    public boolean isViewFromObject(View arg0, Object arg1) {
        // TODO Auto-generated method stub
        return arg0==arg1;
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        // TODO Auto-generated method stub
        container.removeView((View) object);
    }



    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        // TODO Auto-generated method stub

        ImageView imageView = new ImageView(ctx);
//      磨除集合长度
        imageView.setImageResource(list.get(position%list.size()));
//      图片填充拉伸
        imageView.setScaleType(ScaleType.FIT_XY);
        container.addView(imageView);


        return imageView;
    }

}

轮播图片加载网络图片

 List<String> imag_list = new ArrayList<>();
        String rul1="http://pic8.nipic.com/20100701/5290458_114840036316_2.jpg";
        String rul2="http://pic2.nipic.com/20090424/1468853_230119053_2.jpg";
        String rul3="http://img3.3lian.com/2013/s1/20/d/57.jpg";
        imag_list.add(rul1);
        imag_list.add(rul2);
        imag_list.add(rul3);


        MyPagerAdapter vpadapter = new MyPagerAdapter(imag_list,this);
        vper.setAdapter(vpadapter);
        vper.setCurrentItem(10000);
//        发送handler延迟空消息
        sendMsg();

适配器中instantiateItem方法

@Override
    public Object instantiateItem(ViewGroup container, int position) {

        imageView = new ImageView(context);
        imageView.setScaleType(ImageView.ScaleType.FIT_XY);
        ImageLoader.getInstance().displayImage(imag_list.get(position%imag_list.size()), imageView);
        container.addView(imageView);
        //跳转webview页面
        dianji();

        return imageView;
    }
 private void dianji() {
        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(context, Main2Activity.class);
                context.startActivity(intent);
            }
        });

    }

web页面

 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        initView();
//        允许写入JS代码
        web.getSettings().setJavaScriptEnabled(true);
        web.loadUrl("https://www.baidu.com");
    }

    @Override
    protected void onPause() {
        super.onPause();
        finish();
    }

    private void initView() {
        web = (WebView) findViewById(R.id.web);

    }
}
Android中可无限循环轮播的ViewPager 技术要点:伪无限循环,加载本地图片,带标题和指示器,长按停止滚动,也可通过按钮控制滚动及停止,详细了解请移步http://blog.youkuaiyun.com/zxc514257857/article/details/63688217 立即下载

相关推荐

点云体素化算法研究-3.Voxelization 三维模型体素化

体素(voxel)即体积元素的简称,是数字数据在三维空间分割上的最小的单位。体素化就是通过创建三维体素网格来表示三维物体,是一种将无序点云变为有序点云的降采样的空间数据结构方法,便于实现点云的空间卷积。激光雷达(LiDAR)| Open3D:第五节 表面重建-体素化。

周陽讀書 2067

android在Fragment做轮播图,Android中viewpager+fragment以及实现一个简单的广告轮播

要点:1.viewpager的配置(对我而言)viewpager在XML文件中的书写:android:id="@+id/vPager"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_marginLeft="5dp"android:layout_marginRight="5dp...

weixin_39517797的博客 1390

Camera Sensor接口协议全解析(六)聚焦onsemi HiSPi接口的技术突破与应用实践

摘要: Onsemi HiSPi是一种高速并行接口协议,专为高分辨率图像传感器设计,具备1600 Mbps传输速率、低功耗和高兼容性特点。通过对比DVP、MIPI CSI-2等主流协议,HiSPi在工业/医疗领域表现突出,支持动态功耗控制、多ROI和CRC校验。其创新架构包含多PHY设计,提供分组SP、流SP等多种工作模式,满足灵活传输需求。实际应用中,HiSPi在PCB缺陷检测(5μm精度)和液晶面板检测(0.3% Mura检出率)等场景展现卓越性能,成为高速成像领域的关键技术。

GateWorld的博客 1437

fragment+PagerAdapter实现轮播图(带圆点)

fragment+PagerAdapter实现轮播图(带圆点)

qq_40741719的博客 396

从Chiplet到UCIE:D2D互联技术如何重塑半导体设计生态

本文探讨了D2D互联技术在半导体设计中的革命性作用,从Chiplet到UCIE标准的演进如何重塑行业生态。详细分析了D2D互联的技术本质、架构选择及UCIE标准带来的变革,并展望了未来光学D2D和3D集成等趋势。高速互联接口技术的突破为AI加速器和计算芯片提供了更高带宽和能效。

weixin_29292535的博客 932

Cesium体渲染实战:从医学CT到气象数据的3D可视化全攻略

本文详细介绍了如何利用Cesium体渲染技术实现医学CT和气象数据的3D可视化。从数据预处理到交互式渲染,涵盖了DICOM和NetCDF格式的处理技巧,以及性能优化的实战策略,帮助开发者高效处理复杂的三维数据集。

weixin_28717431的博客 420

Android中viewpager+fragment以及实现一个简单的广告轮播

要点:1.viewpager的配置(对我而言)viewpager在XML文件中的书写:        android:id="@+id/vPager"          android:layout_width="match_parent"          android:layout_height="match_parent"          android:layout_marginLef

前人挖坑,后人种(pen) 3235

Python量化交易实战:如何用vnpy+Tushare获取股票历史数据(附完整代码)

本文详细介绍了如何利用vn.py框架与Tushare数据接口,构建一个健壮的Python量化交易数据获取引擎。通过封装Tushare API,实现股票历史数据的自动化获取与格式转换,并适配vn.py的BarData结构,为策略回测与实盘交易提供稳定、高效的数据基础。文中提供了完整的代码实现,涵盖环境配置、核心封装逻辑及高级功能扩展。

cola5的博客 1221

Android Viewpager实现真正无限循环的轮播广告banner ViewPager + FragmentStatePagerAdapter + Fragment(抖音四)

1.ViewPager添加view---实现广告图片轮播 2ViewPager无限滑动---实现广告图片无限循环 1.ViewPager,实现真正的无限循环(定时+手动) 2.ViewPager + FragmentStatePagerAdapter + Fragment 3.抖音 ViewPager突出的底部标题栏的实现clipChildren 4.Fragmen...

深南大盗的博客 1894

攻防世界 misc题GFSJ1129-【您看我还有机会吗?】

我们发现了隐藏内容,一开始我以为那个英文就是flag,提交后发现不对,然后我想只有一张图片然后图片上的隐写内容又不是flag,那必定还有什么文件被隐藏了,于是我们打开VMware并启动Ubuntu,使用binwalk分析一下有没有隐藏文件,我们要在Terminal中分析,如下。我们发现里面有一个flag.txt文件,我们尝试提取里面内容,但发现又要密码,我们想起了之前图片上的隐藏内容,我们将那段英文输入(包括空格和符号,在VMware中输入密码不会有显示,你看到的就像没输入一样),然后我们看到如下。

大数据专业,关注 AI 安全与数学建模。记录 Web 安全、对抗攻击、隐私保护等安全实践,以及从经典模型到智能方法的建模思考。用数学思维理解 AI,用 AI 方法反哺安全与建模。 1096

24、语料库与科技术语库建设

本文探讨了语料库在科技术语库建设中的关键作用,重点分析了词性标注、索引、搭配、词形还原、频率计数、词汇排序和类型-标记分析等核心技术的应用与挑战。文章以印度语言为例,指出其语料库处理工具匮乏的现状,强调需开发适配本地语言特征的技术,并提出一个整合多种处理步骤的综合流程,旨在推动印度语言科技术语数据库的系统化建设,促进科技语言的发展与应用。

cola5的博客 92

FragmentPagerAdapter&FragmentStatePageAdapter整理(二)

整理这个是因为平时用得很多,很多时候只是知其然,不知其所以然,现在有些时间,就慢慢撸一撸。PagerAdapter与ViewPager结合,现在应该是个app都会有ViewPager+PagerAdapter的组合了。PagerAdapter负责数据,而ViewPager负责展示。PagerAdapter是一个抽象类,FragmentPagerAdapter和FragmentStatePagerAd

成长的烧年 1万+

浅谈银行内部户治理

为避免该问题的发生,对内部户入账类交易,或内部户是可透支的账户(如系统间往来),可考虑通过异步方式更新账户余额(当然,根本上还是要考虑银行业务量的实际,异步消息接口很多时候没有同步接口方便),另外,在进行内部户余额更新时,可以通过定时的借贷方发生额轧差的方式,将多次的锁请求,简化为一次(当然,发生额明细本身在加工账户交易历史时,是不能汇总的)。内部户在银行系统中,属于业务属性较少,实现相对简单,原理也很容易讲清的系统,但管中窥豹,越是基础的东西,越能看出一家银行业务、内控的专业程度。

银行信息系统应用架构详解 790

Android:ViewPager详解(异步网络加载图片,带图片缓存,并带导航小圆点)

android 应用中,如欢迎指引页面, 和图片轮播功能, 或者更多的内容在一页显示不了,要分成多个页面,这时候viewpager是很好用的。 下面是一个例子,带异步网络加载图片,并带导航小圆点 package com.example.viewpagertest; import java.io.IOException; import java.lang.ref.SoftRef

2928

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Android 无限轮播图空白问题(不是针对1张或者2张图片的情况)

前序 大家常说,无图言luan,今天的的确没有截图,主要是分享下自己在“无限轮播图上遇到的问题”,望各位老铁见谅 问题描述 主页面上有四个Fragment,类似于微信上的页面布局,有个fragment为首页(fragment),这里有个广告图无限轮播。问题出现:当切换到其他fragment上或者进入到新的Activity回来后,发现轮播上显示的是空白的图片(轮播图只有三张) 相信很多老铁在...

风火神 2969

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

tablayout 自动轮播 和viewpager

package com.bwie.zhouliumoni.fragment; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.annotation.Nullable; import android.support.desig

fxs_321的博客 332

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Android开发的一些总结

关于xml文件的一些属性 layout_margin:使用该属性布局和父布局的距离值 padding:使用该属性的布局中内容和该布局的距离 控件+view(权重设置为1)+控件+view(权重设置为1)+控件,可以使三个控件均匀分布 gravity:比如:TextView中文字位于该TextView的位置,一般设置为center viewpager基本用法 轮播图片:xml中用viewpag...

qq_36751487的博客 216

TabLayout、 DrawerLayout侧拉、Viewpager轮播图:动态标题、view生成小圆点

package liyuanqi.bwie.com.chouti; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.support.v4.view.ViewPager; import android.support.v4.widget.Dra...

LI_YUANQI的博客 406

Android:ViewPager详细解释(异步网络负载图片,有图片缓存,)并与导航点

android 应用。准则欢迎页面。 和图像旋转木马特征, 或者没有很多其他的内容显示在一个页面。以被划分成多个页面,在这一刻viewpager这是非常容易使用。 首先看下效果: 以下是一个样例。带异步网络载入图片,并带导航小圆点 package com.example.viewpagertest; import java.io.IOExcept...

weixin_30355437的博客 105

ViewPager使用详解和相关技巧之禁止滑动和滑动到最后一条时的监听等方法

ViewPager在开发中的使用频率非常的高,此做个总结,本文包括以下几方面: ViewPager的简介和作用 ViewPager的适配器 ViewPager实现小圆点指示器效果 ViewPager禁止滑动 ViewPager滑动到最后一条再次滑动的监听 1.ViewPager的简介和作用 ViewPager是android扩展包v4包中的类,这个类可以让用户左右切换当前

AndroidFlying007的博客 5066

菜鸟的ViewPager使用

1.将ViewPager和Fragment绑定使用(1) 继承FragmentPagerAdapter,重写ViewPager的适配器import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdap

RainMcCom的博客 482

手把手教你炫酷慕课网视频启动导航的完美实现

看了慕课网的视频启动导航真心感觉不错,然后呢试着去做了个一模一样的效果,个人感觉效果还是不错的。  先来看效果: 整体感觉效果还是非常不错的吧。 实现思路 看上面那个GIF图,分析可知。首先是一个显示慕课网LOGO的Activity,然后跳转到了今天我们要讲的引导效果的Activity 根据它滑动的效果,可猜测是由ViewPager实现的。

JerryWu145的专栏 967

Android ViewPager实现无限循环滑动

最近做项目需要实现一个类似于淘宝、京东首页那种滑动效果的广告。于是想到使用ViewPager,但是ViewPager本身是不支持无限左右滑动的,所以需要自己实现。目前实现无限滑动的思路大体有两个: 1、将viewpager上限设置成一个很大的数,第一个页面设置到中间。然后滑动的时候,用当前的序号与viewpager页面数取余得到目标页面的序号,然后显示出来。理论上一个人不会无聊到一直左滑

greyfreedom的专栏 1154

android 自定义共享库,二十个Android开源库整理分享之Viewpager

原标题:二十个Android开源库整理分享之Viewpager新的篇章之前做了一个 Android ui 2018 但是有朋友反馈说,开源库内容不错,但是有点太多了,不便于查找,希望我做个开源库整理,听到这个需求,我面对1800+的开源库,竟然有点不好下手,想来想去,我决定将这个开源库进行整理,重新配图并持续更新,希望大家多多关注我。比心~今天是本系列第一篇章 ViewPager,如果你有更好的 ...

weixin_39721009的博客 322
上一篇: 网络判断,简单的没网调取缓存图片
下一篇: 网络图片加载Image-Universal-Loader
user_app
博客等级 码龄9年 7粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值