中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中實現一個布局幀布局霓虹燈效果

發布時間:2021-04-07 15:51:18 來源:億速云 閱讀:161 作者:Leah 欄目:移動開發

本篇文章為大家展示了怎么在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>

上述內容就是怎么在Android中實現一個布局幀布局霓虹燈效果,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

祁门县| 北川| 陈巴尔虎旗| 鸡泽县| 丽水市| 牙克石市| 比如县| 文水县| 建水县| 武义县| 海原县| 新昌县| 昌宁县| 潞西市| 湛江市| 乌鲁木齐市| 亚东县| 多伦县| 上虞市| 黎平县| 重庆市| 徐水县| 嘉兴市| 定州市| 荆门市| 巴马| 绍兴市| 常山县| 寻甸| 景宁| 灵宝市| 苏尼特右旗| 临湘市| 禹州市| 忻城县| 安图县| 五家渠市| 桓台县| 昌吉市| 县级市| 桦甸市|