package me.wcy.music.fragment; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.LinearLayout; import android.widget.ListView; import java.util.List; import me.wcy.music.R; import me.wcy.music.activity.OnlineMusicActivity; import me.wcy.music.adapter.SongListAdapter; import me.wcy.music.application.AppCache; import me.wcy.music.constants.Extras; import me.wcy.music.enums.LoadStateEnum; import me.wcy.music.model.SongListInfo; import me.wcy.music.utils.NetworkUtils; import me.wcy.music.utils.ViewUtils; import me.wcy.music.utils.binding.Bind; /** * 在线音乐 * Created by wcy on 2015/11/26. */ public class SongListFragment extends BaseFragment implements AdapterView.OnItemClickListener { @Bind(R.id.lv_song_list) private ListView lvSongList; @Bind(R.id.ll_loading) private LinearLayout llLoading; @Bind(R.id.ll_load_fail) private LinearLayout llLoadFail; private List<SongListInfo> mSongLists; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_song_list, container, false); } @Override protected void init() { if (!NetworkUtils.isNetworkAvailable(getContext())) { ViewUtils.changeViewState(lvSongList, llLoading, llLoadFail, LoadStateEnum.LOAD_FAIL); return; } mSongLists = AppCache.getSongListInfos(); if (mSongLists.isEmpty()) { String[] titles = getResources().getStringArray(R.array.online_music_list_title); String[] types = getResources().getStringArray(R.array.online_music_list_type); for (int i = 0; i < titles.length; i++) { SongListInfo info = new SongListInfo(); info.setTitle(titles[i]); info.setType(types[i]); mSongLists.add(info); } } SongListAdapter adapter = new SongListAdapter(mSongLists); lvSongList.setAdapter(adapter); } @Override protected void setListener() { lvSongList.setOnItemClickListener(this); } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { SongListInfo songListInfo = mSongLists.get(position); Intent intent = new Intent(getContext(), OnlineMusicActivity.class); intent.putExtra(Extras.MUSIC_LIST_TYPE, songListInfo); startActivity(intent); } }