package com.dingmouren.dingdingmusic.ui.search; import android.app.ActivityOptions; import android.app.Notification; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Parcelable; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.text.Editable; import android.text.TextUtils; import android.text.TextWatcher; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; import com.dingmouren.dingdingmusic.Constant; import com.dingmouren.dingdingmusic.MyApplication; import com.dingmouren.dingdingmusic.R; import com.dingmouren.dingdingmusic.base.BaseActivity; import com.dingmouren.dingdingmusic.bean.MusicBean; import com.dingmouren.dingdingmusic.bean.SearchBean; import com.dingmouren.dingdingmusic.listener.MyOnSearchActionListener; import com.dingmouren.dingdingmusic.listener.MyOnSeekBarChangeListeger; import com.dingmouren.dingdingmusic.ui.musicplay.PlayingActivity; import com.jiongbull.jlog.JLog; import com.mancj.materialsearchbar.MaterialSearchBar; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import butterknife.BindView; /** * Created by dingmouren on 2017/2/10. */ public class SearchActivity extends BaseActivity implements SearchConstract.View{ private static final String TAG = SearchActivity.class.getName(); @BindView(R.id.search_bar) public MaterialSearchBar mSearchBar; @BindView(R.id.recycler) RecyclerView mRecycler; @BindView(R.id.tv_empty) TextView mTvEmpty; @BindView(R.id.progressbar)public ProgressBar mProgressBar; private SearchAdapter mAdapter; public SearchPresenter mPresenter; public MusicBean mMusicBean; public List<MusicBean> mList; private MyOnSearchActionListener myOnSearchActionListener; @Override public int setLayoutResourceID() { return R.layout.activity_search; } @Override public void init(Bundle savedInstanceState) { myOnSearchActionListener = new MyOnSearchActionListener(this); } @Override public void initView() { mSearchBar.enableSearch();//输入状态 mAdapter = new SearchAdapter(this); mRecycler.setLayoutManager(new LinearLayoutManager(this)); mRecycler.setHasFixedSize(true); mRecycler.setAdapter(mAdapter); mPresenter = new SearchPresenter((SearchConstract.View)this); } @Override public void initListener() { mAdapter.setOnItemClickListener(bean -> playSong(bean)); mSearchBar.setOnSearchActionListener(myOnSearchActionListener); } @Override public void initData() { } @Override public void setData(List<SearchBean> list) { JLog.e(TAG,"setData--"+ list.toString()); if (0 == list.size()){ mTvEmpty.setVisibility(View.VISIBLE); }else { mTvEmpty.setVisibility(View.GONE); } mAdapter.setList(list); mAdapter.notifyDataSetChanged(); mProgressBar.setVisibility(View.INVISIBLE); } /** * 播放被点击的歌曲 */ private void playSong(SearchBean bean){ if (null != bean){ mMusicBean = new MusicBean(); mList = new ArrayList<>(); mMusicBean.setUrl(bean.getM4a()); mMusicBean.setSeconds(0); mMusicBean.setAlbumpic_big(bean.getAlbumpic_big()); mMusicBean.setAlbumpic_small(bean.getAlbumpic_small()); mMusicBean.setSongname(bean.getSongname()); mMusicBean.setSingername(bean.getSingername()); mList.add(mMusicBean); if (null != mList && 0 < mList.size()) { Intent intent = new Intent(this, PlayingActivity.class); intent.putExtra(Constant.SEARCH_ACTIVITY_DATA_KEY, (Serializable) mList); intent.putExtra("flag", Constant.MUSIC_SEARCH); startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(this).toBundle()); new Handler().postDelayed(() -> finish(), 800); } } } @Override protected void onDestroy() { super.onDestroy(); // MyApplication.getRefWatcher().watch(this); } }