package Ġcom . hu wei . sweet music player . business . main Ċ Ċ import Ġandroid . app . Search Manager Ċ import Ġandroid . content . Component Name Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . widget . Search View Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ Ċ import Ġcom . hu wei . sweet music player . R Ċ import Ġcom . hu wei . sweet music player . business . online search . Online Search Activity Ċ import Ġcom . hu wei . sweet music player . business . main . local album . Local Album Fragment Ċ import Ġcom . hu wei . sweet music player . business . main . local artist . Local Artist Fragment Ċ import Ġcom . hu wei . sweet music player . business . main . local music . Local Music Fragment Ċ import Ġcom . hu wei . sweet music player . data . cont ants . Music ViewType Contain Ċ import Ġcom . hu wei . sweet music player . business . Base Fragment Ċ import Ġcom . hu wei . sweet music player . ui . adapters . Pager State Adapter Ċ import Ġkotlinx . android . synt hetic . main . fragment _ main .* Ċ import Ġkotlinx . android . synt hetic . main . layout _ gradient _ toolbar .* ĊĊ Ċ /** Ċ Ġ* Ġ@ author ĠJ ay ce Ċ Ġ* Ġ@ date Ġ 2 0 1 5 / 6 / 1 7 Ċ Ġ*/ Ċ class ĠMain Fragment Ġ: ĠBase Fragment (), ĠMusic ViewType Contain Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġm View : ĠView ? Ġ= Ġnull ĊĊĠĠĠ Ġlateinit Ġinternal Ġvar Ġm Pager Adapter : ĠP ager State Adapter ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater ?, Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ç¬¬äºĮ æ¬¡ åı¯ä»¥ çĽ´æİ¥ è¿ĶåĽŀ m View ĊĠĠĠĠĠĠĠ Ġif Ġ( m View Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparent Ġ= Ġm View !!. parent Ġas ĠViewGroup ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparent ?. remove View ( m View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġm View ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠLog . i ( TAG , Ġ" onCreate View ") ĊĊĠĠĠĠĠĠĠ Ġreturn ĠLayoutInflater . from ( mContext ). inflate ( R . layout . fragment _ main , Ġnull ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĊĠĠĠĠĠĠĠ Ġm Pager Adapter . notify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView ?, ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġ// éĺ² æŃ¢ ç¬¬äºĮ æ¬¡ åĬłè½½ ĊĠĠĠĠĠĠĠ Ġif Ġ( m View Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm View Ġ= Ġget View () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinit ToolBar () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinit Pager () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinternal Ġfun Ġinit ToolBar () Ġ{ ĊĠĠĠĠĠĠĠ Ġtoolbar !!. title Ġ= Ġ" S weet Music Player " ĊĠĠĠĠĠĠĠ Ġtoolbar !!. inflate Menu ( R . menu . activity _ main _ menu ) ĊĠĠĠĠĠĠĠ Ġinit Menu ( toolbar !!. menu ) ĊĠĠĠĠĠĠĠ Ġtoolbar !!. setOn MenuItem ClickListener Ġ{ Ġmenu Item Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( menuItem . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . menu _ search Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Menu ( menu : ĠMenu ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsearch View Ġ= Ġmenu . find Item ( R . id . menu _ search ). action View Ġas ĠSearch View ĊĠĠĠĠĠĠĠ Ġval Ġsearch Manager Ġ= Ġm Act . getSystem Service ( Context . SEARCH _ SERVICE ) Ġas ĠSearch Manager ĊĠĠĠĠĠĠĠ Ġval Ġcomponent Name Ġ= ĠComponent Name ( m Act , ĠOnline Search Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġsearch View . set Search able Info ( search Manager . get Search able Info ( component Name )) ĊĠĠĠĠĠĠĠ Ġsearch View . setIcon ified ByDefault ( true ) ĊĊĠĠĠĠĠĠĠ Ġsearch View . setOn Search ClickListener Ġ{ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Pager () Ġ{ ĊĠĠĠĠĠĠĠ Ġm Pager Adapter Ġ= Ġobject Ġ: ĠP ager State Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . support FragmentManager ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Page Title ( position : ĠInt ): ĠCharSequence Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresources . getString Array ( R . array . tab _ titles )[ position ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġadd Ġtabs _ recent ĊĠĠĠĠĠĠĠ Ġ// ĠĠĠĠĠĠĠ Ġm Pager Adapter . add Fragment ( new ĠRecent ly Added Fragment ()); ĊĠĠĠĠĠĠĠ Ġ// Ġadd Ġtab _ songs ĊĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠ Ġbundle . put Int ( Music ViewType Contain . M US IC _ SHOW _ TYPE , ĠMusic ViewType Contain . SHOW _ M US IC ) ĊĊĠĠĠĠĠĠĠ Ġval Ġmusic Fragment Ġ= ĠLocal Music Fragment () ĊĠĠĠĠĠĠĠ Ġmusic Fragment . arguments Ġ= Ġbundle ĊĠĠĠĠĠĠĠ Ġm Pager Adapter . add Fragment ( music Fragment ) ĊĠĠĠĠĠĠĠ Ġ// Ġadd Ġtab _ artists ĊĠĠĠĠĠĠĠ Ġm Pager Adapter . add Fragment ( Local Artist Fragment ()) ĊĠĠĠĠĠĠĠ Ġ// Ġadd Ġtab _ albums ĊĠĠĠĠĠĠĠ Ġm Pager Adapter . add Fragment ( Local Album Fragment ()) ĊĠĠĠĠĠĠĠ Ġview Pager !!. adapter Ġ= Ġm Pager Adapter ĊĊĠĠĠĠĠĠĠ Ġtabs !!. setup With ViewPager ( view Pager ) ĊĊĠĠĠĠĠĠĠ Ġtabs !!. set Tabs From Pager Adapter ( m Pager Adapter ) ĊĠĠĠ Ġ} Ċ } Ċ