diff --git a/app/src/main/java/me/bell/downapp/activity/ListActivity.java b/app/src/main/java/me/bell/downapp/activity/ListActivity.java index 0162905..5e21b96 100644 --- a/app/src/main/java/me/bell/downapp/activity/ListActivity.java +++ b/app/src/main/java/me/bell/downapp/activity/ListActivity.java @@ -1,15 +1,24 @@ package me.bell.downapp.activity; import android.content.Context; +import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; +import android.text.TextUtils; import android.util.Log; +import android.view.KeyEvent; import android.view.View; +import android.view.inputmethod.EditorInfo; +import android.widget.Button; +import android.widget.EditText; +import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; +import android.widget.RelativeLayout; import android.widget.TextView; +import android.widget.Toast; import com.alibaba.fastjson.JSONObject; import com.handmark.pulltorefresh.library.PullToRefreshBase; @@ -28,6 +37,10 @@ private Context mContext; private LinearLayout _backImg; private TextView _titleText; + private ImageView searchImage; + private RelativeLayout searchLayout; + private EditText searchEdit; + private Button searchBtn; private PullToRefreshListView _mListView; //传值 @@ -60,6 +73,22 @@ _backImg.setOnClickListener(this); _titleText = findViewById(R.id.top_title_text); _titleText.setText(title); + searchImage = findViewById(R.id.top_search); + searchImage.setOnClickListener(this); + searchImage.setVisibility(View.VISIBLE); + searchLayout = findViewById(R.id.search_layout); + searchEdit = findViewById(R.id.search_edit); + searchEdit.setOnEditorActionListener(new TextView.OnEditorActionListener() { + @Override + public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) { + if (i == EditorInfo.IME_ACTION_DONE) { + doSearch(); + } + return true; + } + }); + searchBtn = findViewById(R.id.search_btn); + searchBtn.setOnClickListener(this); _mListView = findViewById(R.id.app_list_view); _mListView.setMode(PullToRefreshBase.Mode.BOTH); @@ -87,6 +116,36 @@ case R.id.back_image: finish(); break; + + //搜索图标 + case R.id.top_search: + if (searchLayout.getVisibility() == View.VISIBLE) { + searchLayout.setVisibility(View.GONE); + } else { + searchLayout.setVisibility(View.VISIBLE); + } + break; + //搜索 + case R.id.search_btn: + doSearch(); + break; + + } + } + + /** + * 搜索跳转 + */ + private void doSearch() { + String key = searchEdit.getText().toString().trim(); + if (TextUtils.isEmpty(key)) { + Toast.makeText(mContext, "请输入关键词", Toast.LENGTH_SHORT).show(); + } else { + searchEdit.setText(""); + searchLayout.setVisibility(View.GONE); + Intent intent = new Intent(mContext, SearchActivity.class); + intent.putExtra("keyword", key); + mContext.startActivity(intent); } } @@ -109,7 +168,7 @@ presenter.getAppList(getNewUrl()); } else { YYBBean bean = JSONObject.parseObject(httpResult, YYBBean.class); - if (!bean.isSuccess() || (bean.getPageContext()==null && bean.getCount()==0 && bean.getMsg().equals("success"))) { + if (!bean.isSuccess() || (bean.getPageContext() == null && bean.getCount() == 0 && bean.getMsg().equals("success"))) { //pageContext为null时可能是查询出错,为""是查询结束 presenter.getAppList(getNewUrl()); } else { @@ -121,6 +180,7 @@ MHandler mHandler = new MHandler(); + class MHandler extends Handler { @Override public void handleMessage(Message msg) {