| | |
| | | import android.widget.AdapterView.OnItemClickListener; |
| | | import android.widget.ArrayAdapter; |
| | | import android.widget.AutoCompleteTextView; |
| | | import android.widget.EditText; |
| | | import android.widget.FrameLayout; |
| | | import android.widget.GridView; |
| | | import android.widget.ImageView; |
| | |
| | | |
| | | public class SearchActivity extends BaseActivity implements OnClickListener { |
| | | |
| | | private AutoCompleteTextView et_search_key; |
| | | private EditText et_search_key; |
| | | |
| | | private TextView tv_clear; |
| | | |
| | |
| | | |
| | | private LinearLayout ll_search_history; |
| | | |
| | | private SearchSuggestFragment suggestFragment; |
| | | |
| | | private String value = ""; |
| | | |
| | | private boolean touchSearchInput = false; |
| | | |
| | | private void initView() { |
| | | fl_advertisement = findViewById(R.id.fl_advertisement); |
| | |
| | | setContentView(R.layout.search_actvity); |
| | | initStatusBar(); |
| | | initView(); |
| | | suggestFragment = new SearchSuggestFragment(); |
| | | |
| | | et_search_key.setOnEditorActionListener(new TextView.OnEditorActionListener() { |
| | | @Override |
| | |
| | | public void afterTextChanged(Editable s) { |
| | | if (!TextUtils.isEmpty(s.toString()) |
| | | || !TextUtils.isEmpty(et_search_key.getHint())) { |
| | | |
| | | |
| | | suggestSearch(s.toString()); |
| | | et_search_key.setCompoundDrawablesWithIntrinsicBounds(0, 0, |
| | | R.drawable.ic_clear, 0); |
| | |
| | | // tv_search_cancel.setText(R.string.cancel); |
| | | } |
| | | |
| | | et_search_key.setOnItemClickListener(new OnItemClickListener() { |
| | | |
| | | @Override |
| | | public void onItemClick(AdapterView<?> parent, View view, |
| | | int position, long id) { |
| | | if (parent.getItemAtPosition(position) != null) { |
| | | Intent intent = new Intent(SearchActivity.this, |
| | | SearchResultActivity.class); |
| | | intent.putExtra("key", parent.getItemAtPosition(position) |
| | | .toString()); |
| | | startActivity(intent); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | et_search_key.setOnTouchListener(new OnTouchListener() { |
| | | |
| | | @Override |
| | |
| | | // getCompoundDrawables() 可以获取一个长度为4的数组, |
| | | // 存放drawableLeft,Right,Top,Bottom四个图片资源对象 |
| | | // index=2 表示的是 drawableRight 图片资源对象 |
| | | if (et_search_key.isFocused()) { |
| | | findViewById(R.id.fl_suggest).setVisibility(View.VISIBLE); |
| | | getSupportFragmentManager().beginTransaction().replace(R.id.fl_suggest, suggestFragment).commitAllowingStateLoss(); |
| | | } else { |
| | | findViewById(R.id.fl_suggest).setVisibility(View.GONE); |
| | | getSupportFragmentManager().beginTransaction().remove(suggestFragment).commitAllowingStateLoss(); |
| | | } |
| | | |
| | | Drawable drawable = et_search_key.getCompoundDrawables()[2]; |
| | | if (drawable == null) |
| | | return false; |
| | |
| | | return false; |
| | | } |
| | | }); |
| | | |
| | | |
| | | gv_hot_search.setOnItemClickListener(new OnItemClickListener() { |
| | | |
| | |
| | | .getJSONObject("Data").getJSONArray("data") |
| | | .toString(), new TypeToken<List<String>>() { |
| | | }.getType()); |
| | | |
| | | SuggestKeysAdapter adapter = new SuggestKeysAdapter(getApplicationContext(), results); |
| | | et_search_key.setAdapter(adapter); |
| | | adapter.notifyDataSetChanged(); |
| | | suggestFragment.setData(key, results); |
| | | // SuggestKeysAdapter adapter = new SuggestKeysAdapter(getApplicationContext(), results); |
| | | // et_search_key.setAdapter(adapter); |
| | | // adapter.notifyDataSetChanged(); |
| | | } |
| | | } |
| | | }); |
| | |
| | | fl_advertisement.post(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | int width = fl_advertisement.getWidth()-fl_advertisement.getPaddingLeft()-fl_advertisement.getPaddingRight(); |
| | | int width = fl_advertisement.getWidth() - fl_advertisement.getPaddingLeft() - fl_advertisement.getPaddingRight(); |
| | | new ExpressAdManager(adType, getApplicationContext()).loadSearchAd(DimenUtils.px2dip(getApplicationContext(), width), new ExpressAdManager.IAdLoadListener() { |
| | | @Override |
| | | public void onSuccess(List<ExpressAdContainer> adList) { |