木雨音乐 项目开发(九)网络推荐——设置九大榜单
2016-08-23 18:10
405 查看
网络推荐
木雨音乐 APP已在百度手机助手上架,有兴趣的朋友可以下载测试,下载地址:http://shouji.baidu.com/software/9785031.htm
木雨音乐源码下载地址:http://download.csdn.net/detail/haoxue641/9610782
希望大家多提宝贵意见
网络推荐界面截图
界面实现功能:
1、设置9大榜单
2、加载各大榜单网络音乐列表
3、搜索歌曲功能
4、下载网络歌曲功能
本节讲解功能1
搭载框架Fragment进行榜单填充,单击榜单列表显示相应榜单Fragmeng
NetMusicLisitFragment.java代码如下
package com.haoxue.zixueplayer; import android.content.Context; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ListView; import android.widget.SimpleAdapter; import com.haoxue.zixueplayer.musicfragment.NetEUSMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetHotMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetJSKMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetKTVMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetMTVMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetNATMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetNETMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetORIMusicListFragment; import com.haoxue.zixueplayer.musicfragment.NetPURMusicListFragment; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; /** * Created by Administrator on 2016/7/27. */ public class NetMusicListFragment extends Fragment implements AdapterView.OnItemClickListener { private MainActivity mainActivity; private ListView listView_net; public NetMusicListFragment() { } ArrayList<Map<String, Object>> list = new ArrayList<>(); HashMap<String, Object> title1 = new HashMap<>(); HashMap<String, Object> title2 = new HashMap<>(); HashMap<String, Object> title3 = new HashMap<>(); HashMap<String, Object> title4 = new HashMap<>(); HashMap<String, Object> title5 = new HashMap<>(); HashMap<String, Object> title6 = new HashMap<>(); HashMap<String, Object> title7 = new HashMap<>(); HashMap<String, Object> title8 = new HashMap<>(); HashMap<String, Object> title9 = new HashMap<>(); public static NetMusicListFragment newInstance() { NetMusicListFragment net = new NetMusicListFragment(); return net; } @Override public void onAttach(Context context) { super.onAttach(context); mainActivity = (MainActivity) getActivity(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.net_music, null); //准备数据,每一个HashMap是一条记录 listView_net = (ListView) view.findViewById(R.id.listView_net); title1.put("title", "华语榜"); title1.put("icon", R.mipmap.app_logo); title2.put("title", "欧美榜"); title2.put("icon", R.mipmap.app_logo); title3.put("title", "日韩榜"); title3.put("icon", R.mipmap.app_logo); title4.put("title", "原创榜"); title4.put("icon", R.mipmap.app_logo); title5.put("title", "影视榜"); title5.put("icon", R.mipmap.app_logo); title6.put("title", "网络榜"); title6.put("icon", R.mipmap.app_logo); title7.put("title", "民族榜"); title7.put("icon", R.mipmap.app_logo); title8.put("title", "纯音乐榜"); title8.put("icon", R.mipmap.app_logo); title9.put("title", "KTV点歌榜"); title9.put("icon", R.mipmap.app_logo); list.add(title1); list.add(title2); list.add(title3); list.add(title4); list.add(title5); list.add(title6); list.add(title7); list.add(title8); list.add(title9); //把数据填充到Adapter SimpleAdapter sa = new SimpleAdapter(mainActivity, list, R.layout.net_music_item, new String[]{"title", "icon"}, new int[]{R.id.textView_title, R.id.imageView_icon}); listView_net.setAdapter(sa); listView_net.setOnItemClickListener(this); //默认显示华语榜 NetHotMusicListFragment netHotMusicListFragment = NetHotMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netHotMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); return view; } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (list.get(position).equals(title1)) { NetHotMusicListFragment netHotMusicListFragment = NetHotMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netHotMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title2)) { NetEUSMusicListFragment netEUSMusicListFragment = NetEUSMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netEUSMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title3)) { NetJSKMusicListFragment netJSKMusicListFragment = NetJSKMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netJSKMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title4)) { NetORIMusicListFragment netORIMusicListFragment = NetORIMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netORIMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title5)) { NetMTVMusicListFragment netMTVMusicListFragment = NetMTVMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netMTVMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); 4000 } else if (list.get(position).equals(title6)) { NetNETMusicListFragment netNETMusicListFragment = NetNETMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netNETMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title7)) { NetNATMusicListFragment netNATMusicListFragment = NetNATMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netNATMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title8)) { NetPURMusicListFragment netPURMusicListFragment = NetPURMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netPURMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } else if (list.get(position).equals(title9)) { NetKTVMusicListFragment netKTVMusicListFragment = NetKTVMusicListFragment.newInstance(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.net_list_frame, netKTVMusicListFragment); //把当前Fragment添加到Activity栈 ft.addToBackStack(null); ft.commit(); } } }
net_music.xml代码如下
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:id="@+id/listView_net" android:layout_alignParentTop="true" android:layout_alignParentStart="true" android:divider="#00000000" android:dividerHeight="10px" /> <FrameLayout android:layout_width="0dp" android:layout_weight="2" android:layout_height="match_parent" android:id="@+id/net_list_frame"> </FrameLayout> </LinearLayout>
相关文章推荐
- 木雨音乐 项目开发(十)网络推荐——加载各大榜单网络音乐列表
- 木雨音乐 项目开发(十一)网络推荐——搜索歌曲
- 团队项目推荐:基于社交网络的自动音乐推荐系统——by ZhongXia
- 【Android游戏开发二十七】讲解游戏开发与项目下的hdpi 、mdpi与ldpi资源文件夹以及游戏高清版本的设置 推荐
- 团队项目推荐:基于社交网络的自动音乐推荐系统——by ZhongXia
- Vss2005局域网开发权限设置指南(续)-如何利用VSS为项目小组的成员分配权限
- 软件项目开发岗位设置
- 合作项目二:“礼物”网---网络项目(拟.NET开发)
- 开发环境中biztalk项目设置注意事项
- 用 Virtual PC 简便的配置开发工作所需的网络设置
- ASP.NET 3.5 新特性开发向导实践(附项目源码下载)- Part 1 推荐
- 软件项目管理论文:敏捷在软件开发中的应用 推荐
- 用 Virtual PC 简便的配置开发工作所需的网络设置
- 【项目】07年度科创项目“智能施工网络优化软件开发”结题书、源代码发布
- Visual C# 2008+SQL Server 2005 数据库与网络开发―― 2.6 创建项目
- Visual C# 2008+SQL Server 2005 数据库与网络开发――3.3.3 创建项目
- 无线网络实验之五:无线路由器防火墙设置 推荐
- 现代网络项目开发如何体现优势
- Dreamweaver+vs.net2003+vss项目开发设置
- 推荐――网站类项目开发合同模版