android系列微談一之——仿微信6.0左右滑動漸變切換效果
- <pre name="code"class="java">
----------------------------------------------------------------------------------------------------------介紹:BottomMenuSlideGradientSwipe是一個仿微信6.0左右滑動漸變切換效果的demo,特分享與大家探討郵箱:[email protected] QQ:190951132GitHub賬戶:lijunhuayc[目前上面只有一個自己寫的自定義AlertDialog對話方塊,有興趣的朋友可以看一下,當然肯定沒得前段時間出來的那個專門的動畫對話方塊好哈]群裡很多網友多次討論過新版微信6.0的滑動漸變導航[底部選單漸變切換]的效果怎麼做的,今兒個空了在網上搜了一下,幾乎沒搜到啥有用資訊,唯獨有一個說的是用高斯函式對圖片進行漸變顯隱藏[通過透明度],但這並不能達到效果。你是不是也想知道微信開發者是怎麼實現的呢?那麼請往下看……
針對於此問題,我特地自己來實現此效果。
先看效果圖:
內容左右滑動我們可以用很成功的JazzyViewPager來實現,它自帶多種動畫,其中有一個方法animateFade()就是控制漸變的,但它受到一個屬性mFadeEnabled的影響,所以初始化的時候要確保mFadeEnabled屬性
的值為true首先介紹一下使用到的開源庫:
master-JazzyViewPager主要就是用滑動漸變的viewpager
NineOldAndroids-library超經典的一個動畫庫
----------------------------------------------------------------------------------------------------------
eclipse新建一個專案BottomMenuSlideGradientSwipe
1因為此實現需要修改一點點JazzyViewpager類的原始碼,所以這裡引用方式是直接將master-JazzyViewPager下的所有資原始檔和類檔案拷貝到專案對應目錄下
注意:jazzyviewpager的資源有好幾個attrs.xmlcolor.xmlstrings.xml 這幾個都別忘記了
2將NineOldAndroids-library的jar檔案拷貝到libs目錄下
3新建一個類MainActivity繼承自Activity
先看看佈局檔案
----------------------------------------------------暫停了一下,唉,開始錯了點小錯誤,現在搞定了。完美執行perfect---------哇咔咔咔咔-----------------------------------
先看佈局檔案:
activity_main.xml
[java] view plaincopyprint?- <pre name="code"class="java"><span style="font-family: Arial, Helvetica, sans-serif;"><TabHost xmlns:android="http://schemas.android.com/apk/res/android"</span>
- android:id="@android:id/tabhost"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent" >
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical" >
- <FrameLayout
- android:id="@android:id/tabcontent"
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:background="#FFFFFF"
- android:visibility="gone" >
- </FrameLayout>
- <com.jfeinstein.jazzyviewpager.JazzyViewPager
- xmlns:app="http://schemas.android.com/apk/res/com.ycg.bottommenuslidegradientswipe"
- android:id="@+id/jazzyPager"
- app:style="standard"
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1" />
- <TabWidget
- android:id="@android:id/tabs"
- android:layout_width="match_parent"
- android:layout_height="50dp"
- android:background="@drawable/main_tabwidget_background"
- android:visibility="visible" />
- </LinearLayout>
- /TabHost>
說明:將tabhost用於顯示內容的framelayout隱藏掉,然後用一個viewpager來代替 [此處用的是開源的 JazzyViewPager ,它自帶很多滑動動畫]
main_tabwidget_layout.xml
- <?xmlversion="1.0"encoding="utf-8"?>
- <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:padding="5dp">
- <LinearLayout
- android:id="@+id/normalLayout"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:gravity="center"
- android:orientation="vertical">
- <ImageView
- android:id="@+id/normalImg"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:src="@drawable/scan_book"/>
- <TextView
- android:id="@+id/normalTV"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="掃書"/>
- </LinearLayout>
- <LinearLayout
- android:id="@+id/selectedLayout"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:gravity="center"
- android:orientation="vertical">
- <ImageView
- android:id="@+id/selectedImage"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:src="@drawable/scan_book_hl"/>
- <TextView
- android:id="@+id/selectedTV"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="掃書"
- android:textColor="#00FF00"
- android:textSize="20sp"/>
- </LinearLayout>
- </RelativeLayout>
相關推薦
android系列微談一之——仿微信6.0左右滑動漸變切換效果
[java] view plaincopyprint? <pre name="code"class="java"> ------------------------------------------
Android專案導航欄之仿微信底部導航欄TabLayout+ViewPager+Fragment
一、實現效果: 二、依賴jar包: compile 'com.android.support:design:24+'三、專案工程結構: 四、XML佈局 activity_main.xml佈局: <?xml version="1.0" encoding="u
android開發之仿微信輸入框效果
<EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="50dp" android:layout_m
Android程式設計之仿微信顯示更多文字的View
微信朋友圈中,如果好友發表的文字過長,會自動收縮起來,底下有提示,當點選“顯示更多”時才會展開。 首先定義佈局檔案(很簡單,不解釋): <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:
android之仿微博Textview的伸縮效果
package com.example.testdemo; import android.app.Activity; import android.os.Bundle; import android.text.TextUtils.TruncateAt; import an
Android實現首字母導航條(仿微信)
本部落格介紹Android實現首字母導航條,先看張效果圖,具體怎麼實現看程式碼吧 具體的步驟 1.整體佈局的顯示 2. 實現A-Z的分組 3. 自定義A-Z的導航條 4. 中間顯示/隱藏觸控到導航條具體的字母 activity_main.xml <?xm
安卓專案實戰之仿微信朋友圈的九宮格自定義控制元件
效果圖 圖片展示形式 1、當只有1張圖時,可以自己定製圖片寬高,也可以使用預設九宮格的寬高; 2、當只有4張圖時,以2*2的方式顯示; 3、除以上兩種情況下,都是按照3列方式顯示,但這時有一些細節: a、如果只有9張圖,當然是以3*3的方式顯示;
Android Studio使用ViewPager+Fragment實現仿微信滑動切換介面
前言 微信的滑動切換獲得大家一致好評,在我們開發的過程中我們也經常模仿微信的導航效果。 首先看下效果圖 效果還算不錯,可以滑動切換和點選切換,微信介面用listview展示資料,通訊錄介面用的recyclerview展示資料,在接下來就帶著大家一一
IOS實戰 (4) 之 仿微信新聞評論框+ 半透明模糊效果
效果圖 網易新聞評論圖 仿圖 實現思路 1.鍵盤彈出事件 2.UIVisualEffectView作為背景圖 核心程式碼 1.鍵盤彈出事件監聽 新增通知監聽 [[NSNotificationCenter defaultCe
Android 多張圖片展示,仿微信圖片上傳,可以選擇多張圖片
我們經常會遇到需要多張圖片展示上傳的需求 ,如圖 這樣的需求我已經遇到過多次,個人總結一下,希望大家多多指點,支援選擇多張圖片 佈局:一個GridView <com.zuihou.drunkenmonkey.widget.view.Di
iOS開發之仿微博視訊邊下邊播之自定義AVPlayer播放器, 邊下邊播解剖。視訊處理流程,建立連線-請求資料-統籌資料-解碼資料-視訊呈現
Tips:這次的內容分為兩篇文章講述 01、[iOS]仿微博視訊邊下邊播之封裝播放器 講述如何封裝一個實現了邊下邊播並且快取的視訊播放器。 02、[iOS]仿微博視訊邊下邊播之滑動TableView自動播放 講述如何實現在tableView中滑動播放視訊,並且是流暢,不阻塞
Android自定義Viewpager指示器PagerIndicator-仿微博頭條效果
平時工作之餘,喜歡看看新聞,手機難免會裝了幾個新聞閱讀類的app。新聞類的app風格大致一致,可以選擇不同欄目,欄目可以切換。最近就在用微博頭條,感覺介面挺清新的。而且它使用的PagerIndicator挺好看的。昨晚居然準時下班了,趁著早就實現了下。今天
Android中ViewPager常用功能3----仿微信既能點選又能滑動的選項卡
效果圖: MainActivity中 package com.example.viewpagertest4; import android.app.Activity; import android.graphics.Color; import android.supp
Android仿微信底部實現Tab選項卡切換效果
在網上看了比較多的關於Tab的教程,發現都很雜亂。比較多的用法是用TitlePagerTabStrip和ViewPaper。不過TitlePagerTabStrip有個很大的缺陷,Tab裡面的內容剛進去是沒有的,要滑一次才能加載出來。而且滑動的時候,Tab裡面的內容位置
Android RadioGroup+ViewPager+ActionBar實現仿微信6.0介面(底部滑動選單欄+導航欄)
轉載請註明原文地址:http://blog.csdn.net/anyfive/article/details/41296341 本文主要使用RadioGroup+ViewPager來實現滑動介面,使用ActionBar來實現頂部選單欄。先上圖(使用GifCam錄製)。
Android OpenGLES濾鏡開發之仿抖音靈魂出竅
前言 前幾篇寫的濾鏡效果比如美顏、大眼、貼紙效果都是在錄製視訊之前,這個靈魂出竅的效果是在錄製視訊之後,可以對視訊新增效果。 思路 可以觀察到靈魂出竅的效果,其實其主影象本沒有什麼變化,只是新增了一張進行縮放的紋理,跟主影象的alpha進行線性融合的。 怎麼去取靈魂呢,靈魂是跟著
Android系列Viewpager+Fragment 優化之懶載入(預載入)的實現
今天帶來的就是fragment的優化,怎麼去實現懶載入 懶載入(預載入) 懶載入字面意思就是當需要的時候才會去載入,不需要就不要載入 為什麼Fragment需要懶載入呢,一般我們都會在onCreate()或者onCreateView()裡去啟動一些資料載入操作,比如從本
docker系列詳解<一>之docker安裝
1、Docker 要求 CentOS 系統的核心版本高於 3.10 ,檢視本頁面的前提條件來驗證你的CentOS 版本是否支援 Docker 。 通過 uname -r 命令檢視你當前的核心版本 $ uname -r 2、使用 root 許可權登入 Centos。確保 yum 包更新到最新。 $ su
Android自定義控制元件之仿汽車之家下拉重新整理
關於下拉重新整理的實現原理我在上篇文章Android自定義控制元件之仿美團下拉重新整理中已經詳細介紹過了,這篇文章主要介紹錶盤的動畫實現原理 汽車之家的下拉重新整理分為三個狀態: 第一個狀態為下拉重新整理狀態(pull to refresh),在這個狀
微博開發之釋出微博
今天我們使用微博來進行開發,實現可以將內容釋出在微博上面,並顯示出此微博的釋出源。 在微博開發文件中介紹的,我們可以使用開發平臺中提供的程式碼來實現,也可以使用平臺中提供的SDK包,修改後實現。 下面介紹第一種方法。 我們首先找到微博元件中的釋出窗,使用上面提供的程式碼。