From 48e53c091965c3510d97ad4fa94e7bea736c90f6 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 30 五月 2024 14:37:18 +0800 Subject: [PATCH] 2024年05月30日14:37:13 --- app/src/main/java/com/hdl/photovoltaic/ui/message/SearchMessageActivity.java | 56 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 43 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/SearchMessageActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/SearchMessageActivity.java index 62986e6..41cb83e 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/SearchMessageActivity.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/SearchMessageActivity.java @@ -18,20 +18,16 @@ import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.base.CustomBaseActivity; -import com.hdl.photovoltaic.bean.PageNumberObject; import com.hdl.photovoltaic.databinding.ActivitySearchMessgeBinding; -import com.hdl.photovoltaic.enums.MessageStateType; -import com.hdl.photovoltaic.enums.ShowErrorMode; import com.hdl.photovoltaic.listener.CloudCallBeak; -import com.hdl.photovoltaic.other.HdlDeviceLogic; import com.hdl.photovoltaic.other.HdlFileLogic; import com.hdl.photovoltaic.other.HdlLogLogic; import com.hdl.photovoltaic.other.HdlMessageLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.ui.adapter.SearchHistoryAdapter; import com.hdl.photovoltaic.ui.adapter.SearchMessageAdapter; -import com.hdl.photovoltaic.ui.bean.DeviceBean; import com.hdl.photovoltaic.ui.bean.MessageBean; +import com.hdl.photovoltaic.utils.KeyboardStateObserverUtils; import java.util.ArrayList; import java.util.Collections; @@ -56,6 +52,8 @@ List<String> searchHistoryTitleList = new ArrayList<>(); + String mMessageStateType = ""; + @Override public Object getContentView() { viewBinding = ActivitySearchMessgeBinding.inflate(getLayoutInflater()); @@ -65,6 +63,7 @@ @Override public void onBindView(Bundle savedInstanceState) { setStatusBarTranslucent(); + mMessageStateType = getIntent().getStringExtra("MessageStateType"); //鍘嗗彶璁板綍鏂囦欢澶瑰垱寤� HdlFileLogic.getInstance().createFileDir(HdlFileLogic.getInstance().getCurrentUserRootPath()); //鍒濆鍖栨暟鎹� @@ -172,6 +171,16 @@ @Override public void onClick(int position, String title) { viewBinding.messageSearchEt.setText(title); + //鎼滅储鍏抽敭瀛� + currSearchText = viewBinding.messageSearchEt.getText().toString().replace(" ", ""); + if (TextUtils.isEmpty(currSearchText)) { + HdlThreadLogic.toast(_mActivity, R.string.search_content_null); + return; + } + viewBinding.historyListParent.setVisibility(View.GONE); + viewBinding.listParent.setVisibility(View.VISIBLE); + addSearchTextToList(); + loadNextPageMessageList(true, 1, viewBinding.messageSearchEt.getText().toString(), true); } }); //娑堟伅鐐瑰嚮鏄簨浠� @@ -179,7 +188,7 @@ @Override public void onClick(int position, MessageBean messageBean) { Intent intent = new Intent(); - intent.putExtra("msgId", messageBean.getMsgId().toString()); + intent.putExtra("messageBean", new Gson().toJson(messageBean)); intent.setClass(_mActivity, MessageInfoActivity.class); startActivity(intent); } @@ -200,6 +209,29 @@ searchMessageAdapter = new SearchMessageAdapter(_mActivity); viewBinding.listRcv.setLayoutManager(new LinearLayoutManager(_mActivity)); viewBinding.listRcv.setAdapter(searchMessageAdapter); + viewBinding.messageSearchEt.post(new Runnable() { + @Override + public void run() { + viewBinding.messageSearchEt.requestFocus(); + } + }); + + //鍦ㄧ晫闈腑浣跨敤 + KeyboardStateObserverUtils.getKeyboardStateObserver(_mActivity).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() { + @Override + public void onKeyboardShow(int h) { + //Toast.makeText(MainActivity.this,"閿洏寮瑰嚭",Toast.LENGTH_SHORT).show(); + viewBinding.messageSearchEt.requestFocus(); + + } + + @Override + + public void onKeyboardHide(int h) { + viewBinding.messageSearchEt.clearFocus(); + } + + }); } @@ -288,7 +320,7 @@ HdlMessageLogic.getInstance().getPageNoMessageList( "", pageNo, - "", + mMessageStateType, "", "", "", @@ -380,19 +412,17 @@ * 娣诲姞鍘嗗彶璁板綍 */ private void addSearchTextToList() { + int maxValue = 10; for (int i = 0; i < searchHistoryTitleList.size(); i++) { if (searchHistoryTitleList.get(i).equals(currSearchText)) { searchHistoryTitleList.remove(searchHistoryTitleList.get(i)); } } - searchHistoryTitleList.add(currSearchText); - // 鍊掑簭鎺掑垪鏁版嵁(鎼滅储鏈�鍚庢帓鍦ㄥ墠闈�) - Collections.reverse(searchHistoryTitleList); - if (searchHistoryTitleList.size() > 10) { + searchHistoryTitleList.add(0, currSearchText); + if (searchHistoryTitleList.size() > maxValue) { //鍘嗗彶璁板綍涓嶈兘瓒呭嚭10 - searchHistoryTitleList.remove(searchHistoryTitleList.get(11)); + searchHistoryTitleList.remove(searchHistoryTitleList.get(maxValue)); } - } /** -- Gitblit v1.8.0