扣丁音乐(三)——UI框架的实现
本文出自:http://blog.csdn.net/dt235201314/article/details/51341057
一丶PagerSlidingTabStrp运用
扣丁音乐1.0前部分(gif图大小限制)演示:
视频教程中是直接将PagerSlidingTabStrp例子的主页面拿来做主页面,并对相应用到的地方做出修改
修改一:
activity_main.xml
保留如下,其余控件删除
<com.astuetz.PagerSlidingTabStrip android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="48dip" android:background="@drawable/background_tabs" /> <android.support.v4.view.ViewPager android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/tabs" tools:context=".MainActivity" />
修改二:
MainActivity.java
默认颜色
private int currentColor = 0xFFC74B46;
滑动项名字
private final String[] TITLES = { "我的音乐", "音乐馆" };
滑动Fragment相关加载(作者目前阶段的)
@Override public Fragment getItem(int position) {if(position==0){if(myMusicFragment==null){myMusicFragment = MyMusicFragment.newInstance(); }return myMusicFragment; }else if(position==1){if(netMusicFragment==null){netMusicFragment = NetMusicFragment.newInstance(); }return netMusicFragment; }return null; }}
二丶MymusicFragment
由演示可以看到我的页面比视频上多一个跳转页,并没有在MymusicFragment实现歌曲加载而是通过点击跳转,其实也就多一个页面。
MymusicFragment.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/skin2"> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:background="#10ffffff"> <LinearLayout android:id="@+id/four_module" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:layout_marginBottom="20dp" android:orientation="horizontal"> <LinearLayout android:id="@+id/ll_local_songs" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <ImageView android:id="@+id/iv_local_songs" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/local_songs"/> <TextView android:id="@+id/tv_local_songs" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/local_songs" android:paddingTop="10dp" android:textColor="@color/white" android:textStyle="bold"/> <TextView android:id="@+id/tv_songs_count" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="12" android:paddingTop="5dp" android:textColor="@color/white"/> </LinearLayout> <LinearLayout android:id="@+id/ll_already_download" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_weight="1" android:gravity="center"> <ImageView android:id="@+id/iv_already_download" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/already_download"/> <TextView android:id="@+id/tv_already_download" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/already_download" android:paddingTop="10dp" android:textColor="@color/white" android:textStyle="bold"/> <TextView android:id="@+id/download_count" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="15" android:paddingTop="5dp" android:textColor="@color/white"/> </LinearLayout> <LinearLayout android:id="@+id/ll_recent_played" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_weight="1" android:gravity="center"> <ImageView android:id="@+id/iv_recent_played" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/recent_played"/> <TextView android:id="@+id/tv_recent_played" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/recent_played" android:paddingTop="10dp" android:textColor="@color/white" android:textStyle="bold"/> <TextView android:id="@+id/tv_download_count" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="16" android:paddingTop="5dp" android:textColor="@color/white"/> </LinearLayout> <LinearLayout android:id="@+id/ll_settings" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <ImageView android:id="@+id/iv_settings" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/settings"/> <TextView android:id="@+id/tv_settings" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/settings" android:paddingTop="10dp" android:textColor="@color/white" android:textStyle="bold"/> </LinearLayout> </LinearLayout> </RelativeLayout> </RelativeLayout>
MymusicFragment.java
public class MyMusicFragment extends Fragment implements View.OnClickListener{private LinearLayout layout_local_songs; private MainActivity mainActivity; /** * 初始化myMusicFragment,在MainActivity中调用 * @return */ public static MyMusicFragment newInstance(){MyMusicFragment myMusicFragment = new MyMusicFragment(); return myMusicFragment; }@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {View view = inflater.inflate(R.layout.my_music_fragment,null); layout_local_songs = (LinearLayout)view.findViewById(R.id.ll_local_songs); layout_local_songs.setOnClickListener(this); return view; }@Override public void onClick(View view) {switch (view.getId()){case R.id.ll_local_songs:Intent intent = new Intent(getActivity(),LocalSongsActivity.class); startActivity(intent); break; }} }
这里由于目前功能只实现这么多,数据写的是虚拟的,也只完成对本地音乐列表的跳转
扣丁音乐(三)——UI框架的实现相关推荐
- 扣丁音乐(二)——PagerSlidingTabStrp集成与运用
本文出自:http://blog.csdn.net/dt235201314/article/details/51326041 一丶PagerSlidingTabStrp简介 PagerSlidingT ...
- 扣丁音乐(四)——本地音乐加载
本文出自:http://blog.csdn.net/dt235201314/article/details/51341078 一丶本地音乐加载相当于就是listVIew应用 扣丁音乐1.0前部分(gi ...
- android项目实战课程扣丁音乐已杀青预计本月上线
Android项目实战课程<扣丁音乐>杀青啦Android项目实战课程<扣丁音乐>于今天杀青,用不了些许日子,等后期制作妹子剪辑完成后,将在扣丁学堂官网更新(目前已更新至第12 ...
- 扣丁音乐(五)——service实现歌曲播放功能
本文出自:http://blog.csdn.net/dt235201314/article/details/51341104 代码上传到github,欢迎start:https://github.co ...
- 扣丁音乐 个人练习源码下载
CodingkePlayer代码下载:http://git.oschina.net/mengmintian/CodingkePlayer 转载于:https://blog.51cto.com/phpe ...
- 游戏UI框架设计(三) : 窗体的层级管理
游戏UI框架设计(三) ---窗体的层级管理 UI框架中UI窗体的"层级管理",最核心的问题是如何进行窗体的显示管理.窗体(预设)的显示我们前面定义了三种类型: 普通.隐藏其他.反 ...
- 一起Talk Android吧(第三百八十二回:UI框架)
文章目录 使用背景 概念介绍 命令式UI框架 声明式UI框架 各位看官们,大家好,上一回中咱们说的是通知发送方式的的例子,这一回中咱们介绍的例子是UI框架.闲话休提,言归正转,让我们一起Talk An ...
- Android QQ空间(Apad)项目总结(三)---应用UI框架的搭建!!!
大家好,今天是元旦节了,祝大家节日快乐!今天给大家分享的是Apad Qzone的UI框架,我们首先看下交互图如下: 图1:交互效果图. 从上图可以看出,整个应用其实UI框架相对比较简单,可以分为俩部分 ...
- (转)Android QQ空间(Apad)项目总结(三)---应用UI框架的搭建!!!
今天给大家分享的是Apad Qzone的UI框架,我们首先看下交互图如下: 图1:交互效果图. 从上图可以看出,整个应用其实UI框架相对比较简单,可以分为俩部分,左侧导航栏区域,右侧显示内容区域.当我 ...
最新文章
- shell逐行读取文件
- Channel的几种状态
- Java连载3-编译与运行阶段详解JRE,JDK,JVM关系
- c语言如何查看内置函数,C中函数内部的函数
- 周鸿祎:希望将互联网基因与汽车制造企业基因进行重组
- is not in the sudoers files的解决办法
- 大二英语单词(粗略)
- 高一计算机课程教案,高一信息技术教案第一章
- 软考计算机英语词汇,软考计算机专业英语常用词汇(首字母I-O)
- 有道云笔记修改主题教程
- PMP项目管理如何通过改革处理掉核心技术成果的潜在流失风险?
- 160个crackme 024详细题解(动态指令)
- 数据项、数据字典、模式等基本概念辨析 数据库系统结构
- java计算机毕业设计Web商铺租赁管理系统MyBatis+系统+LW文档+源码+调试部署
- tkinter天气查询可视化
- 生成目录路径树结构方法
- 计算机博弈六子棋估值函数,机器博弈中搜索策略和估值函数的设计
- 数据库系统原理填空题
- 最熟悉的陌生人DOM
- 编程规范及程序员的自我修养
热门文章
- 欧内斯特·海明威曾经写道:“世界是一个美好的地方,值得为之奋斗。我同意第二部分。
- DIY个人智能家庭网关—— 路由器篇之配置DDNS
- Android微信h5分享,H5网页实现微信分享功能
- mac新手教程:十分钟轻松熟悉操作Mac系统
- [ShaderGraph]01.全息投影效果
- 博威合金15亿元收购光伏资产
- 怎么使用讯捷CAD编辑器编辑文字
- 怎么通过邮件发送网页内容
- lm2776dbvr_收购LM5007MM大量回收LM2776DBVR
- java 由身份证号生成出生日期