指令匯B新聞客戶端開發(一) 新手引導頁開發

2022-08-22 05:45:11 字數 1789 閱讀 8439

首先做開發的時候應該有乙個閃屏頁面和新手引導頁, 我相信閃屏頁面大家應該都會了,那麼先看到新手引導頁了。

我們可以看到這其實是乙個viewpager,我們也可以看到這是3個引導頁,那麼首先來看一下布局檔案

<?xml version="1.0" encoding="utf-8"?>

然後我們需要在清單檔案中註冊這個活動:

接下來是主介面了:

// 初始化引導頁的小圓點

for (int i = 0; i < mimageids.length; i++)

point.setlayoutparams(params);// 設定圓點的大小

llpointgroup.addview(point);// 將圓點新增給線性布局

} // 獲取檢視樹, 對layout結束事件進行監聽

llpointgroup.getviewtreeobserver().addongloballayoutlistener(

new ongloballayoutlistener()

});

初始化介面,當然,這些都需要定義一下

mimageviewlist = new arraylist();

// 初始化引導頁的3個頁面

for (int i = 0; i < mimageids.length; i++)

@override

public boolean isviewfromobject(view arg0, object arg1)

@override

public object instantiateitem(viewgroup container, int position)

@override

public void destroyitem(viewgroup container, int position, object object)

}

然後是 viewpager的滑動監聽

class guidepagelistener implements onpagechangelistener
當某個頁面被選中的時候,例如第一頁:

// 某個頁面被選中

@override

public void onpageselected(int position) else

} // 滑動狀態發生變化

@override

public void onpagescrollstatechanged(int state)

在閃屏頁裡面判斷是否只出現一次,因為我們這個新手引導頁在使用者安裝的時候只出現一次就可以了,顯示完成之後點選「開始體驗」直接跳轉到主頁面:

那麼我們如何判斷使用者只顯示一次呢?

*** 跳轉下乙個頁面

*/private void jumpnextpage() else

finish();

}然後再新手頁中新增以下**:如果「is_user_guide_showed"是true,則表示已經展示了新手引導頁,那麼我們下次就可以不用再展示了,下次進入的時候直接跳轉主頁面。

btnstart.setonclicklistener(new onclicklistener() 

});initviews();

vpguide.setadapter(new guideadapter());

vpguide.setonpagechangelistener(new guidepagelistener());

匯入相關的包,這個專案就可以成功執行了。

指令匯B新聞客戶端開發(三) 下拉重新整理

現在我們繼續這個新聞客戶端的開發,今天分享的是下拉重新整理的實現,我們都知道下拉重新整理是乙個應用很常見也很實用的功能。我這個應用是通過拉listview來實現重新整理的,先看一張重新整理的原理圖 從圖中可知,手指移動的距離就是dy。重新整理分為三種狀態 下拉重新整理 正在重新整理 鬆開重新整理 定...

指令匯B新聞客戶端開發(三) 下拉重新整理

現在我們繼續這個新聞客戶端的開發,今天分享的是下拉重新整理的實現,我們都知道下拉重新整理是乙個應用很常見也很實用的功能。我這個應用是通過拉listview來實現重新整理的,先看一張重新整理的原理圖 從圖中可知,手指移動的距離就是dy。重新整理分為三種狀態 下拉重新整理 正在重新整理 鬆開重新整理 定...

仿網易新聞客戶端(一)

前些日子受到一位前同事的影響,決定利用業餘時間do something,於是決定仿寫點什麼,正好之前仿寫過網易雲 所以這次就仿個網易新聞吧,湊個雙,嘿嘿。說的輕鬆,目測網易新聞也不是那麼好實現的,個人認為主要的難點為 一切看似都充滿未知,但我卻已經越來越興奮了。第一階段的主要完成了對網易新聞整體框架...