1. 程式人生 > >4. 首頁模組(二)之工具類

4. 首頁模組(二)之工具類

上一節對歡迎模組進行了綜述(可參見 2. 歡迎模組 進行了解),接下來將從首頁模組開始詳細介紹:

  • [首頁模組(一)之搭建伺服器]
  • [首頁模組(二)之工具類]
  • [首頁模組(三)之首頁]
  • [首頁模組(四)之新聞詳情]
  • [首頁模組(五)之Python學科]

知識點:

  • 掌握工具類的開發,建立工具類

工具類:

任務綜述:
由於專案中會遇到多個介面重複使用同一個方法的情況,因此為了減少重複程式碼量,需要建立一個工具類存放這些方法,當任意一個介面需要呼叫該方法時,直接呼叫工具類中的方法即可。

1.建立Constant類

任務分析:


由於專案是從Tomcat(一臺小型伺服器)中獲取資料並展現在各個介面上的,因此需要建立一個Constant類存放各個介面向伺服器請求資料所需要的介面地址。

任務實施:
選中com.XXXX.newsdemo包,在該包下建立utils包。在utils包中建立一個Constant類。在該類中建立首頁廣告欄與新聞列表介面地址。

Constant.java

public class Constant {
    //內網介面
    public static final String WEB_SITE ="http://192.168.43.140:8080/newsdemo";
    //首頁滑動廣告介面
    public static final String REQUEST_AD_URL = "/home_ad_list_data.json";
    //首頁新聞列表介面
    public static final String REQUEST_NEWS_URL = "/home_news_list_data.json";
}

2.建立JsonParse類

任務分析:
由於專案的Tomcat伺服器使用的是JSON資料,需要建立一個JsonParse類解析從伺服器中獲取的JSON資料。

任務實施:
(1)建立JsonParse類。在com.XXXX.newsdemo.utils包中建立一個JsonParse類。
(2)新增gson庫。在AS中,選擇專案右擊選擇Open Module Settings/Dependencies/“+”/Library dependency,把com.google.code.gson:gson:2.2.4庫加入主專案。
(3)呼叫gson庫解析JSON資料。JsonParse類主要用於解析從伺服器獲取的JSON資料。

JsonParse.java

public class JsonParse {
    private static JsonParse instance;
    private JsonParse() {
    }
    public static JsonParse getInstance() {
        if (instance == null) {
            instance = new JsonParse();
        }
        return instance;
    }
}

3.建立UtilsHelper類

任務分析:
由於專案中部分介面會用到相同的功能,因此為了減少專案中的重複程式碼量與便於後續呼叫,需要把實現這些功能的方法抽取出來並放在一個工具類UtilsHelper中。

任務實施:
(1)建立UtilsHelper類。在utils包中建立一個UtilsHelper類。
(2)獲取螢幕寬度。在UtilsHelper類中,建立一個getScreenWidth()方法用於獲取螢幕寬度,在首頁介面設定廣告欄寬度時呼叫。

UtilsHelper.java

public class UtilsHelper {
    /**
     * 獲得螢幕寬度
     */
    public static int getScreenWidth(Context context) {
        WindowManager wm = (WindowManager) context.getSystemService(Context.
                WINDOW_SERVICE);
        DisplayMetrics outMetrics = new DisplayMetrics();
        wm.getDefaultDisplay().getMetrics(outMetrics);
        return outMetrics.widthPixels;
    }
}