糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 仿照网易云音乐界面 android特效

仿照网易云音乐界面 android特效

时间:2023-12-22 23:02:55

相关推荐

仿照网易云音乐界面 android特效

独角兽企业重金招聘Python工程师标准>>>

仿照网易云音乐界面 ,页面UI实现的听不错的,学习ui的朋友可以下载下来研究研究,android特效更多学习。

项目大体框架,由ViewPager和TabContentPagerAdapter实现顶部的左右滑动切换view.

右侧滑动DrawerLayout 实现左右滑动。

项目大体实现:

easy.activity;importandroid.app.ActionBar;importandroid.app.FragmentTransaction;importandroid.content.res.TypedArray;importandroid.graphics.Color;importandroid.os.Bundle;importandroid.support.v4.app.FragmentActivity;importandroid.support.v4.view.ViewPager;importandroid.support.v4.widget.DrawerLayout;importandroid.util.Log;importandroid.view.Gravity;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.widget.ImageView;importjava.lang.reflect.Method;easy.R;easy.adapter.TabContentPagerAdapter;publicclassMainActivityextendsFragmentActivity{privateViewPagermViewPager;privateDrawerLayoutslideMenu;privateActionBaractionBar;privateTabContentPagerAdaptermPagerAdapter;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);actionBar=getActionBar();mViewPager=(ViewPager)findViewById(R.id.view_pager);slideMenu=(DrawerLayout)findViewById(R.id.slide_menu);slideMenu.setScrimColor(Color.argb(50,0,0,0));mPagerAdapter=newTabContentPagerAdapter(getSupportFragmentManager());mViewPager.setAdapter(mPagerAdapter);mViewPager.setOnPageChangeListener(newViewPager.SimpleOnPageChangeListener(){@OverridepublicvoidonPageSelected(intposition){actionBar.setSelectedNavigationItem(position);}});actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);ActionBar.TabListenertabListener=newActionBar.TabListener(){@OverridepublicvoidonTabSelected(ActionBar.Tabtab,FragmentTransactionft){mViewPager.setCurrentItem(tab.getPosition());}@OverridepublicvoidonTabUnselected(ActionBar.Tabtab,FragmentTransactionft){}@OverridepublicvoidonTabReselected(ActionBar.Tabtab,FragmentTransactionft){}};TypedArraytabIconIds=getResources().obtainTypedArray(R.array.actionbar_icons);for(inti=0;i<3;i++){Viewview=getLayoutInflater().inflate(R.layout.actionbar_tab,null);ImageViewtabIcon=(ImageView)view.findViewById(R.id.actionbar_tab_icon);tabIcon.setImageResource(tabIconIds.getResourceId(i,-1));actionBar.addTab(actionBar.newTab().setCustomView(view).setTabListener(tabListener));}enableEmbeddedTabs(actionBar);}/***在actionbar中内嵌Tab**@paramactionBaractionbar*/privatevoidenableEmbeddedTabs(android.app.ActionBaractionBar){try{MethodsetHasEmbeddedTabsMethod=actionBar.getClass().getDeclaredMethod("setHasEmbeddedTabs",boolean.class);setHasEmbeddedTabsMethod.setAccessible(true);setHasEmbeddedTabsMethod.invoke(actionBar,true);}catch(Exceptione){Log.v("enableEmbeddedTabs",e.getMessage().toString());}}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){getMenuInflater().inflate(R.menu.menu_main,menu);returntrue;}@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){intid=item.getItemId();if(id==R.id.action_search){//TODO:-07-25搜索界面}elseif(id==R.id.action_menu){//TODO:-07-25菜单选择if(slideMenu.isDrawerOpen(Gravity.RIGHT)){slideMenu.closeDrawer(Gravity.RIGHT);}else{slideMenu.openDrawer(Gravity.RIGHT);}}returntrue;}}//easy.activity;importandroid.annotation.TargetApi;importandroid.app.ActionBar;importandroid.os.Build;importandroid.os.Bundle;importandroid.support.v4.app.Fragment;importandroid.support.v4.app.FragmentActivity;importandroid.support.v4.app.FragmentTransaction;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.widget.FrameLayout;easy.R;easy.fragment.discover.fm.CoverFragment;easy.fragment.discover.fm.LyricFragment;/***Createdbyalex.leeon-07-29.*/publicclassPersonalFMActivityextendsFragmentActivity{privateActionBaractionBar;privateFragmentfgTo;privateFragmentfgCover;privateFragmentfgLyric;privatebooleanfgFlag=false;privateFrameLayoutframeContainer;@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_personal_fm);actionBar=getActionBar();actionBar.setTitle("私人FM");actionBar.setDisplayShowTitleEnabled(true);actionBar.setDisplayUseLogoEnabled(true);actionBar.setDisplayHomeAsUpEnabled(true);actionBar.setDisplayShowHomeEnabled(true);actionBar.setLogo(R.drawable.actionbar_logo);actionBar.setHomeAsUpIndicator(R.drawable.rdi_icn_arr);if(fgCover==null){fgCover=newCoverFragment();}if(!fgCover.isAdded()){getSupportFragmentManager().beginTransaction().add(R.id.frame_fm_container,fgCover,CoverFragment.class.getSimpleName()).commit();}fgTo=fgCover;frameContainer=(FrameLayout)findViewById(R.id.frame_fm_container);frameContainer.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){if(fgFlag){if(fgCover==null){fgCover=newCoverFragment();}switchFragment(fgTo,fgCover);}else{if(fgLyric==null){fgLyric=newLyricFragment();}switchFragment(fgTo,fgLyric);}fgFlag=!fgFlag;}});}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){getMenuInflater().inflate(R.menu.menu_personal_fm,menu);returntrue;}@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){intid=item.getItemId();switch(id){caseandroid.R.id.home:finish();break;}returntrue;}publicvoidswitchFragment(Fragmentfrom,Fragmentto){if(from==null||to==null||from==to){return;}FragmentTransactiontransaction=getSupportFragmentManager().beginTransaction();transaction.setCustomAnimations(R.anim.abc_fade_in,R.anim.abc_fade_out);if(!to.isAdded()){//隐藏当前的fragment,add下一个到Activity中transaction.hide(from).add(R.id.frame_fm_container,to).commit();}else{//隐藏当前的fragment,显示下一个transaction.hide(from).show(to).commit();}fgTo=to;}}

文章来源《IT蓝豹》android特效技术分享网站

如果觉得《仿照网易云音乐界面 android特效》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。