亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android開啟新線程實現(xiàn)電子廣告牌項目

 更新時間:2017年12月26日 09:48:06   作者:光仔December  
這篇文章主要為大家詳細介紹了Android開啟新線程實現(xiàn)電子廣告牌項目,具有一定的參考價值,感興趣的小伙伴們可以參考一下

利用之前學過的多線程處理技術,我們做一個開啟新線程實現(xiàn)電子廣告牌的項目

界面布局文件,加入ImageView圖片控件,用于顯示一個圖片,一個TextView控件,用于顯示廣告說明語。

res/layout/main.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  xmlns:tools="http://schemas.android.com/tools" 
  android:id="@+id/linearLayout1" 
  android:layout_width="fill_parent" 
  android:layout_height="fill_parent" 
  android:orientation="vertical" > 
  <ImageView android:id="@+id/imageView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="10dp" 
    android:src="@drawable/hint"/> 
  <TextView android:id="@+id/TextView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="10dp"/> 
</LinearLayout> 

在res/drawable下加入幾張廣告圖片(ad1.jpg、ad2.jpg、ad3.jpg、ad4.jpg、ad5.jpg)

在主界面中,產(chǎn)生隨機數(shù)不斷的變換在ImageView空間上的圖片資源文件,來實現(xiàn)一個類似于幻燈片的電子廣告牌
MainActivity:

package com.example.test;  
  
import java.util.Random; 
 
 
import android.app.Activity; 
import android.os.Bundle; 
import android.os.Handler; 
import android.os.Message; 
import android.widget.ImageView; 
import android.widget.TextView; 
  
public class MainActivity extends Activity implements Runnable{  
   private ImageView imageView; 
   private TextView textView; 
   private Handler handler; 
   private int[] path=new int[]{R.drawable.ad1,R.drawable.ad2, 
       R.drawable.ad3,R.drawable.ad4,R.drawable.ad5}; 
   private String[] title=new String[]{"美國進口葡萄酒","樂享移動4G時代", 
       "江山御景樓盤開售","大學康城新區(qū)現(xiàn)房","五糧液精品"}; 
  @Override  
  public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main); 
     
    imageView=(ImageView)findViewById(R.id.imageView1); 
    textView=(TextView)findViewById(R.id.TextView1); 
     
    Thread t=new Thread(this);//創(chuàng)建新線程 
    t.start();//開啟線程 
    //實例化一個Handler對象 
    handler=new Handler(){ 
 
 
      @Override 
      public void handleMessage(Message msg) { 
        //更新UI 
        if(msg.what==0x101){ 
          textView.setText(msg.getData().getString("title"));//設置標題 
          imageView.setImageResource(path[msg.arg1]);//設置要顯示的圖片 
        } 
        super.handleMessage(msg); 
      } 
       
    }; 
  } 
  /* 
   * 判斷當前線程是否被中斷,如果沒有被中斷, 
   * 則首先產(chǎn)生一個隨機數(shù),然后獲取一個Message,并將要顯示 
   * 的廣告圖片的索引值和對應標題保存到該Message中,再發(fā)生 
   * 消息,最后讓線程休眠2秒鐘 
   * */ 
  @Override 
  public void run() { 
    int index=0; 
    while(!Thread.currentThread().isInterrupted()){ 
      index=new Random().nextInt(path.length);//產(chǎn)生一個隨機數(shù) 
      Message m=handler.obtainMessage();//獲取一個Message 
      m.arg1=index;//保存要顯示廣告圖片的索引值 
      Bundle bundle=new Bundle();//獲取Bundle對象 
      m.what=0x101;//設置消息標識 
      bundle.putString("title",title[index]);//保存標題 
      m.setData(bundle);//將Bundle對象保存到Message中 
      handler.sendMessage(m);//發(fā)送消息 
      try { 
        Thread.sleep(2000);//讓線程休眠2秒鐘 
      } catch (InterruptedException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace();//輸出異常信息 
      } 
    } 
  } 
  
} 

 顯示效果如圖

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 基于TabLayout中的Tab間隔設置方法(實例講解)

    基于TabLayout中的Tab間隔設置方法(實例講解)

    下面小編就為大家分享一篇基于TabLayout中的Tab間隔設置方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • android 使用XStream解析xml的實例

    android 使用XStream解析xml的實例

    下面小編就為大家分享一篇android 使用XStream解析xml的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • Android中@id和@+id及@android:id的區(qū)別介紹

    Android中@id和@+id及@android:id的區(qū)別介紹

    這篇文章主要給大家介紹了關于Android中@id和@+id及@android:id的區(qū)別的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 發(fā)布?Android?library?到?Maven?解析

    發(fā)布?Android?library?到?Maven?解析

    這篇文章主要介紹了發(fā)布?Android?library到Maven解析,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • 快速調(diào)試Android應用系統(tǒng)修改ro.debuggable屬性的兩種方式

    快速調(diào)試Android應用系統(tǒng)修改ro.debuggable屬性的兩種方式

    這篇文章主要為大家介紹了快速調(diào)試Android應用系統(tǒng)修改ro.debuggable屬性的兩種方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • Android時分秒計時器的兩種實現(xiàn)方法

    Android時分秒計時器的兩種實現(xiàn)方法

    這篇文章主要介紹了Android時分秒計時器的兩種實現(xiàn)方法,分別是Chronometer控件和handler+timer+timerTask方式,非常不錯,感興趣的朋友一起看下吧
    2016-08-08
  • 淺談Android Studio 4.1 更新內(nèi)容

    淺談Android Studio 4.1 更新內(nèi)容

    這篇文章主要介紹了淺談Android Studio 4.1 更新內(nèi)容,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • Android自定義View仿IOS圓盤時間選擇器

    Android自定義View仿IOS圓盤時間選擇器

    這篇文章主要介紹了Android自定義View仿IOS圓盤時間選擇器,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • Android Studio3.5開發(fā)工具(安卓開發(fā)工具)安裝步驟詳解

    Android Studio3.5開發(fā)工具(安卓開發(fā)工具)安裝步驟詳解

    這篇文章主要為大家詳細介紹了Android Studio3.5開發(fā)工具安裝、安卓開發(fā)工具的安裝步驟,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • 智能指針與弱引用詳解

    智能指針與弱引用詳解

    智能指針有很多實現(xiàn)方式,android 中的sp 句柄類實際上就是google 實現(xiàn)的一種強引用的智能指針。我沒有仔細看android sp 的實現(xiàn)方式,但其基本原理是固定的,現(xiàn)在我們從一個相對簡單的例子來看智能指針的實現(xiàn)
    2013-09-09

最新評論