1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
      <output id="hzk7v"></output>
    2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
    3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

      Android开发实现布局帧布局霓虹灯效果示例

       更新时间£º2019年04月12日 12:00:25   作者£º水中鱼之1999   我要评论

      这篇文章主要介绍了Android开发实现布局帧布局霓虹灯效果,涉及Android界面布局¡¢资源文件操作及属性设置等相关技巧,需要的朋友可以参考下

      本文实例讲述了Android开发实现布局帧布局霓虹灯效果¡£分享给大家供大家参考£¬具体如下£º

      效果图£º

      实现方式£º

      FrameLayout中£¬设置8个TextView£¬在主函数中£¬设计颜色数组£¬通过有序替换他们颜色£¬实现渐变效果¡£

      java代码£ºMainActivity

      public class MainActivity extends AppCompatActivity {
        private int currentColor = 0;
        /*
        定义颜色数组 实现颜色切换 类似鱼片切换
         */
        final int[] colors = new int[]{
          R.color.color1,
          R.color.color2,
          R.color.color3,
          R.color.color4,
          R.color.color5,
          R.color.color6,
          R.color.color7,
          R.color.color8
        };
        final int[] names= new int[]{
          R.id.view01,
          R.id.view02,
          R.id.view03,
          R.id.view04,
          R.id.view05,
          R.id.view06,
          R.id.view07,
          R.id.view08
        };
        TextView[] views = new TextView[names.length];
        Handler handler = new Handler(){
          @Override
          public void handleMessage(Message msg){
            //表明消息由本日程发送
            if(msg.what == 0x123){
              for(int i = 0; i < names.length; i++){//更换颜色
                views[i].setBackgroundResource(colors[ (i + currentColor) % names.length]);
              }
              currentColor++;
            }
            super.handleMessage(msg);
          }
        };
        @Override
        protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
          for(int i = 0; i < names.length; i++){//更换颜色
            views[i] = (TextView) findViewById(names[i]);
          }
          //定义一个线程改变current变量值
          new Timer().schedule(new TimerTask() {
            @Override
            public void run() {
              //发送一条空消息通知系统改变6个TextView颜色
              handler.sendEmptyMessage(0x123);
            }
          }, 0, 300);
        }
      }
      
      

      xml文件

      <?xml version="1.0" encoding="utf-8"?>
      <FrameLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/root"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
        <!--依次定义六个TextView£¬先定义的位于底层
        后定义的位于上层-->
        <TextView
          android:id="@+id/view01"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="320dp"
          android:height="320dp"
          android:background="#ea7500"/>
        <TextView
          android:id="@+id/view02"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="280dp"
          android:height="280dp"
          android:background="#ff8000"/>
        <TextView
          android:id="@+id/view03"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="240dp"
          android:height="240dp"
          android:background="#ff9224"/>
        <TextView
          android:id="@+id/view04"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="200dp"
          android:height="200dp"
          android:background="#ffa042"/>
        <TextView
          android:id="@+id/view05"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="160dp"
          android:height="160dp"
          android:background="#ffaf60"/>
        <TextView
          android:id="@+id/view06"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="120dp"
          android:height="120dp"
          android:background="#ffa042"/>
        <TextView
          android:id="@+id/view07"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="80dp"
          android:height="80dp"
          android:background="#ff9224"/>
        <TextView
          android:id="@+id/view08"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:width="40dp"
          android:height="40dp"
          android:background="#ff8000"/>
      </FrameLayout>
      
      

      color资源文件设置£º

      <?xml version="1.0" encoding="utf-8"?>
      <resources>
        <color name="colorPrimary">#008577</color>
        <color name="colorPrimaryDark">#00574B</color>
        <color name="colorAccent">#D81B60</color>
        <color name="color1">#844200</color>
        <color name="color2">#d26900</color>
        <color name="color3">#ff9224</color>
        <color name="color4">#ffbb77</color>
        <color name="color5">#ffd1a4</color>
        <color name="color6">#ffaf60</color>
        <color name="color7">#ff8000</color>
        <color name="color8">#bb5e00</color>
      </resources>
      
      

      改编自疯狂java第三版

      更多关于Android相关内容感兴趣的读者可查看本站专题£º¡¶Android控件用法总结¡·¡¢¡¶Android开发入门与进阶教程¡·¡¢¡¶Android视图View技巧总结¡·¡¢¡¶Android编程之activity操作技巧总结¡·¡¢¡¶Android数据库操作技巧总结¡·及¡¶Android资源操作技巧汇总¡·

      希望本文所述?#28304;?#23478;Android程序设计有所帮助¡£

      相关文章

      • Android仿IOS自定义AlertDialog提示框

        Android仿IOS自定义AlertDialog提示框

        本篇文章主要介绍了Android仿IOS自定义AlertDialog对话框£¬主要介绍了圆角AlertDialog对话框£¬具有一定的参?#25216;?#20540;£¬有兴趣的可以了解一下¡£
        2017-03-03
      • Android编程实现XML解析与保存的三种方法详解

        Android编程实现XML解析与保存的三种方法详解

        这篇文章主要介绍了Android编程实现XML解析与保存的三种方法,结合实例形式详细分析了Android实现xml解析的SAX¡¢DOM¡¢PULL三种方法的相关操作技巧,需要的朋友可以参考下
        2017-08-08
      • Android控件之RatingBar自定义星级评分样式

        Android控件之RatingBar自定义星级评分样式

        RatingBar为评分条控件£¬默认效果为若干个绿色的?#20999; ¿?#22914;果想将其换成其他自定义?#35745;?#23601;要自定义它的style¡£接下来通过本文给大家介绍Android控件之RatingBar自定义星级评分样式£¬感兴趣的朋友一起学习吧
        2016-02-02
      • Android使用SwipeListView实现类似QQ的滑动删除效果

        Android使用SwipeListView实现类似QQ的滑动删除效果

        这篇文章主要介绍了Android使用SwipeListView实现类似QQ的滑动删除效果£¬具有一定的参?#25216;?#20540;£¬感兴趣的小伙伴们可以参?#23478;?#19979;
        2016-08-08
      • android新建草稿删除后下次开机还会显示保存的草稿

        android新建草稿删除后下次开机还会显示保存的草稿

        android 新建一个草稿£¬保存£¬然后全?#21487;?#38500;会话£¬关机再开机后还会显示保存的草稿£¬下面与大家分享下具体的解决方法
        2013-06-06
      • Android应用创建桌面快捷方式代码

        Android应用创建桌面快捷方式代码

        这篇文章主要为大家详细介绍了Android应用创建桌面快捷方式代码,具有一定的参?#25216;?#20540;£¬感兴趣的小伙伴们可以参?#23478;?#19979;
        2016-09-09
      • android实现蓝牙app代码

        android实现蓝牙app代码

        这篇文章主要为大家详细介绍了android实现蓝牙app的代码£¬具有一定的参?#25216;?#20540;£¬感兴趣的小伙伴们可以参?#23478;?#19979;
        2018-05-05
      • 详解ASP.NET Core 处理 404 Not Found

        详解ASP.NET Core 处理 404 Not Found

        这篇文章主要介绍了详解ASP.NET Core 处理 404 Not Found,小编觉得挺不错的£¬现在分享给大家£¬也给大家做个参考¡£一起跟随小编过来看看吧
        2017-10-10
      • Android 使用地图时的权限请求方法

        Android 使用地图时的权限请求方法

        今天小编就为大家分享一篇Android 使用地图时的权限请求方法£¬具有很好的参?#25216;?#20540;£¬希望?#28304;?#23478;有所帮助¡£一起跟随小编过来看看吧
        2018-07-07
      • Android 中StringBuffer 和StringBuilder常用方法

        Android 中StringBuffer 和StringBuilder常用方法

        这篇文章主要介绍了Android 中StringBuffer 和StringBuilder的常用方法及区别介绍,需要的朋友可以参考下
        2017-02-02

      最新评论

      3dÊÔ»úºÅÖвÊÍø

        1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
          <output id="hzk7v"></output>
        2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
        3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

            1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
              <output id="hzk7v"></output>
            2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
            3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>