4
4
import android .os .Bundle ;
5
5
import android .support .annotation .Nullable ;
6
6
import android .support .design .widget .TabLayout ;
7
- import android .support .v4 .app .DialogFragment ;
8
7
import android .support .v4 .view .ViewPager ;
9
8
import android .support .v7 .widget .LinearLayoutManager ;
10
9
import android .support .v7 .widget .RecyclerView ;
11
10
import android .text .Editable ;
12
11
import android .text .TextWatcher ;
12
+ import android .view .KeyEvent ;
13
13
import android .view .LayoutInflater ;
14
14
import android .view .View ;
15
15
import android .view .ViewGroup ;
16
+ import android .view .inputmethod .EditorInfo ;
16
17
import android .view .inputmethod .InputMethodManager ;
17
18
import android .widget .EditText ;
18
19
import android .widget .ImageView ;
40
41
* 搜索
41
42
* Created by ChenRui on 2017/8/28 0028 14:51.
42
43
*/
43
- public class SearchFragment extends DialogFragment implements ISearchContract .View {
44
+ public class SearchFragment extends BaseFragment implements ISearchContract .View {
45
+
46
+ public static SearchFragment newInstance () {
47
+ return new SearchFragment ();
48
+ }
49
+
44
50
@ BindView (R .id .et_search_text )
45
51
EditText mSearchView ;
46
52
@ BindView (R .id .img_edit_delete )
@@ -111,6 +117,29 @@ private void initView() {
111
117
mViewPager .setOffscreenPageLimit (5 );
112
118
mTabLayout .setupWithViewPager (mViewPager );
113
119
120
+ mSearchView .setOnEditorActionListener (new TextView .OnEditorActionListener () {
121
+ @ Override
122
+ public boolean onEditorAction (TextView textView , int actionId , KeyEvent keyEvent ) {
123
+ if (actionId == EditorInfo .IME_ACTION_SEARCH ) {
124
+ preformSearch ();
125
+ return true ;
126
+ }
127
+ return false ;
128
+ }
129
+ });
130
+
131
+ // 搜索建议上档点击
132
+ mSuggestionAdapter .setSelectedClickListener (new View .OnClickListener () {
133
+ @ Override
134
+ public void onClick (View v ) {
135
+ String text = (String ) v .getTag ();
136
+ if (text != null ) {
137
+ mSearchView .setText (text );
138
+ mSearchView .setSelection (text .length ());
139
+ }
140
+ }
141
+ });
142
+
114
143
mSuggestionAdapter .registerAdapterDataObserver (new RecyclerView .AdapterDataObserver () {
115
144
@ Override
116
145
public void onChanged () {
@@ -164,6 +193,17 @@ public void afterTextChanged(Editable editable) {
164
193
mSearchView .addTextChangedListener (mSearchTextWatcher );
165
194
}
166
195
196
+ @ Override
197
+ public void onActivityCreated (@ Nullable Bundle savedInstanceState ) {
198
+ super .onActivityCreated (savedInstanceState );
199
+ if (getActivity () != null && getActivity ().getIntent () != null ) {
200
+ int position = getActivity ().getIntent ().getIntExtra ("position" , 0 );
201
+ if (position > 0 && mViewPager != null ) {
202
+ mViewPager .setCurrentItem (position );
203
+ }
204
+ }
205
+ }
206
+
167
207
@ OnClick (R .id .rl_edit_delete )
168
208
public void onEditDeleteClick () {
169
209
mSearchView .setText ("" );
@@ -176,8 +216,7 @@ public void onSearchClick() {
176
216
preformSearch ();
177
217
} else {
178
218
// 退出
179
- // getActivity().finish();
180
- dismiss ();
219
+ getActivity ().finish ();
181
220
}
182
221
}
183
222
0 commit comments