zoukankan      html  css  js  c++  java
  • 手动图片横向轮播

    新学习知识,用到率30%

    子布局设置:

    主布局设置:

    activity设置:
    package com.example.administrator.test_1216;

    import android.graphics.Color;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.TextView;

    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
        //声明主布局
        ImageView img;
        LinearLayout line;
        //声明子布局
        ImageView img1;
        TextView num;
        //图片数组
        int[] imgid=null;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.item_view);
            // 绑定祝布局
            img= (ImageView) findViewById(R.id.img);
            line= (LinearLayout) findViewById(R.id.line);
            //初始化数组
            imgid = new int[]{R.mipmap.baiyang, R.mipmap.chunv, R.mipmap.jinniu, R.mipmap.mojie, R.mipmap.shizi, R.mipmap.baiyang, R.mipmap.chunv, R.mipmap.jinniu, R.mipmap.mojie, R.mipmap.shizi};
            //使用for循环新建视图
            for (int i = 0; i <imgid.length ; i++) {
                //加载子布局
                View v= LayoutInflater.from(MainActivity.this).inflate(R.layout.item1,null);
                //绑定子布局
                img1= (ImageView) v.findViewById(R.id.img1);
                num= (TextView) v.findViewById(R.id.num);
                //为子布局控件添加id,用来点击使用
                img1.setId(i);
                //设置背景资源
                img1.setImageResource(imgid[i]);
                //给textView设置内容
                num.setText(i+"");
                //给textView设置tag,点击时使用
                num.setTag(i);
                //设置监听
                img1.setOnClickListener(this);
                //将子布局添加到主布局中

                line.addView(v);
            }
        }

        @Override
        public void onClick(View v) {
            //点击的控件必须是ImageView类型  并且  点击的ImageView控件要是子布局里的
                if((v instanceof ImageView)&&(v!=img)){
                    //给主布局里的ImageView控件设置背景资源,保证和子布局里点击选中的图片一致
                    img.setImageResource(imgid[v.getId()]);
                    //遍历LinearLayout里面子布局,对文字进行设置
                    for (int i = 0; i <line.getChildCount() ; i++) {
                        num= (TextView) line.findViewWithTag(i);
                        //设置选中图片对应的下面文字序号的编号
                        if(line.getChildAt(i).findViewById(i).getId()==v.getId()){
                            num.setTextColor(Color.BLUE);
                        }else {
                            //未选中图片对应的颜色
                            num.setTextColor(Color.BLACK);
                        }
                    }
                }
        }
    }

    效果图:

  • 相关阅读:
    物联网操作系统HelloX V1.77(beta)版本发布
    对XX证券报关于物联网操作系统的几个问题的答复
    Android利用广播实现ViewPager中item之间的数据通信
    Android创建桌面快捷方式
    Android时间选择器对话框的使用
    Android数据库LitePal的存储操作
    Android创建数据表和LitePal的基本用法
    我的2014
    logstash 安装zabbix插件
    tag_on_failure => [] # prevent default _grokparsefailure tag on real records
  • 原文地址:https://www.cnblogs.com/ll-ouyang/p/6197750.html
Copyright © 2011-2022 走看看