欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android GuideView實(shí)現(xiàn)首次登陸引導(dǎo)

 更新時(shí)間:2019年03月21日 09:51:29   作者:冬天的蚊子  
這篇文章主要為大家詳細(xì)介紹了Android GuideView實(shí)現(xiàn)首次登陸引導(dǎo),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

簡(jiǎn)介:最最輕量級(jí)的新手引導(dǎo)庫,能夠快速為任何一個(gè) View 創(chuàng)建一個(gè)遮罩層,支持單個(gè)頁面,多個(gè)引導(dǎo)提示,支持為高亮區(qū)域設(shè)置不同的圖形,支持引導(dǎo)動(dòng)畫,方便擴(kuò)展

項(xiàng)目地址:binIoter/GuideView

GuideView

本系統(tǒng)能夠快速的為一個(gè) Activity 里的任何一個(gè) View 控件創(chuàng)建一個(gè)遮罩式的導(dǎo)航頁。

工作原理

首先它需要一個(gè)目標(biāo) View 或者它的 id,我們通過 findViewById 來得到這個(gè) View,計(jì)算它在屏幕上的區(qū)域 targetRect,通過這個(gè)區(qū)域,開始繪制一個(gè)覆蓋整個(gè) Activity 的遮罩,可以定義遮罩的顏色和透明度,然而目標(biāo) View 被繪制成透明從而實(shí)現(xiàn)高亮的效果。接下來是在相對(duì)于這個(gè) targetRect 的區(qū)域繪制一些圖片或者文字。我們把這樣一張圖片或者文字抽象成一個(gè) Component 接口,設(shè)置文字或者圖片,所有的圖片文字都是相對(duì)于 targetRect 來定義的??梢栽O(shè)定額外的 x,y 偏移量,可以對(duì)遮罩系統(tǒng)設(shè)置可見狀態(tài)的發(fā)生變化時(shí)的監(jiān)聽回調(diào),可以對(duì)遮罩系統(tǒng)設(shè)置開始和結(jié)束時(shí)的動(dòng)畫效,另外,我們可以不對(duì)整個(gè) Activity 覆蓋遮罩,而是對(duì)某一個(gè) View 覆蓋遮罩。

注意:具體用法參見 demo,內(nèi)附詳細(xì)注釋

usage

 public class SimpleComponent implements Component {
 
  @Override
  public View getView(LayoutInflater inflater) {
     LinearLayout ll = new LinearLayout(inflater.getContext());
     LinearLayout.LayoutParams param =
         new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
     ll.setOrientation(LinearLayout.VERTICAL);
     ll.setLayoutParams(param);
     TextView textView = new TextView(inflater.getContext());
     textView.setText(R.string.welcome);
     textView.setTextColor(inflater.getContext().getResources().getColor(R.color.color_white));
     textView.setTextSize(20);
     ImageView imageView = new ImageView(inflater.getContext());
     imageView.setImageResource(R.mipmap.arrow);
     ll.removeAllViews();
     ll.addView(textView);
     ll.addView(imageView);
     ll.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View view) {
         Toast.makeText(view.getContext(), "引導(dǎo)層被點(diǎn)擊了", Toast.LENGTH_SHORT).show();
 
       }
     });
     return ll;
  }
 
    @Override
    public int getAnchor() {
       return Component.ANCHOR_BOTTOM;
    }
 
    @Override
    public int getFitPosition() {
       return Component.FIT_START;
    }
 
    @Override
    public int getXOffset() {
        return 30;
    }
 
    @Override
    public int getYOffset() {
       return 0;
    }
  }
 
 public void showGuideView() {  
   final GuideBuilder builder1 = new GuideBuilder();
   builder1.setTargetView(button1)
       .setAlpha(150)
       .setOverlayTarget(true)//設(shè)置目標(biāo)區(qū)域是否高亮顯示
       .setOutsideTouchable(false);
   builder1.setOnVisibilityChangedListener(new GuideBuilder.OnVisibilityChangedListener() {
     @Override
     public void onShown() {
       // Toast.makeText(MutiGuideViewActivity.this, "show", Toast.LENGTH_SHORT).show();
       }
     @Override
     public void onDismiss() {
       button2.post(new Runnable() {
         @Override
         public void run() {
           showGuideView2();
         }
       });
       // Toast.makeText(MutiGuideViewActivity.this, "dismiss", Toast.LENGTH_SHORT).show();
     }
   });
 
   builder1.addComponent(new SimpleComponent());
   Guide guide = builder1.createGuide();
   guide.setShouldCheckLocInWindow(false);
   guide.show(MutiGuideViewActivity.this);
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android調(diào)用手機(jī)攝像頭拍照和錄音功能

    Android調(diào)用手機(jī)攝像頭拍照和錄音功能

    這篇文章主要為大家詳細(xì)介紹了Android調(diào)用手機(jī)攝像頭拍照和錄音功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • AOSP源碼下載示例代碼

    AOSP源碼下載示例代碼

    這篇文章主要介紹了AOSP源碼下載,由于清華源中給出很清晰的配置下載方法,這兒只做幾條總結(jié),對(duì)AOSP源碼感興趣的朋友一起看看吧
    2022-08-08
  • Android?中TextureView和SurfaceView的屬性方法及示例說明

    Android?中TextureView和SurfaceView的屬性方法及示例說明

    這篇文章主要介紹了Android?中TextureView和SurfaceView的屬性方法及示例說明,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-06-06
  • 關(guān)于Android內(nèi)存緩存LruCache的使用及其源碼解析

    關(guān)于Android內(nèi)存緩存LruCache的使用及其源碼解析

    LruCache作為內(nèi)存緩存,使用強(qiáng)引用方式緩存有限個(gè)數(shù)據(jù),當(dāng)緩存的某個(gè)數(shù)據(jù)被訪問時(shí),它就會(huì)被移動(dòng)到隊(duì)列的頭部,本文詳細(xì)介紹了關(guān)于Android內(nèi)存緩存LruCache的使用及其源碼解析,需要的朋友可以參考下
    2023-05-05
  • Android自定義view實(shí)現(xiàn)水波進(jìn)度條控件

    Android自定義view實(shí)現(xiàn)水波進(jìn)度條控件

    這篇文章主要為大家詳細(xì)介紹了Android自定義view實(shí)現(xiàn)水波進(jìn)度條控件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Android中okhttp3.4.1+retrofit2.1.0實(shí)現(xiàn)離線緩存

    Android中okhttp3.4.1+retrofit2.1.0實(shí)現(xiàn)離線緩存

    這篇文章主要介紹了Android中okhttp3.4.1結(jié)合retrofit2.1.0實(shí)現(xiàn)離線緩存,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Android RecycleView和線型布局制作聊天布局

    Android RecycleView和線型布局制作聊天布局

    大家好,本篇文章主要講的是Android RecycleView和線型布局制作聊天布局,感興趣的同學(xué)趕緊來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • android調(diào)用WebService實(shí)例分析

    android調(diào)用WebService實(shí)例分析

    這篇文章主要介紹了android調(diào)用WebService的方法,以實(shí)例形式較為詳細(xì)的分析了WebService的調(diào)用原理與具體使用方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • Flutter桌面開發(fā)windows插件開發(fā)

    Flutter桌面開發(fā)windows插件開發(fā)

    這篇文章主要為大家介紹了Flutter桌面開發(fā)windows插件開發(fā)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • zxing二維碼位矩陣轉(zhuǎn)換成Bitmap位圖的實(shí)戰(zhàn)教程

    zxing二維碼位矩陣轉(zhuǎn)換成Bitmap位圖的實(shí)戰(zhàn)教程

    二維碼的應(yīng)用已經(jīng)可以說是非常廣泛了,下面這篇文章主要給大家介紹了關(guān)于zxing二維碼位矩陣轉(zhuǎn)換成Bitmap位圖的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09

最新評(píng)論