implementation 'com.google.code.gson:gson:2.2.4'
implementation 'com.android.support:recyclerview-v7:27.1.0'
implementation 'com.android.support:support-v4:27.1.1'
implementation 'org.xutils:xutils:3.3.36'
implementation 'com.squareup.picasso:picasso:2.3.2'
implementation 'com.android.support:design:27.1.1'
implementation 'com.carson_ho:SearchLayout:1.0.1'
public class MainActivity extends AppCompatActivity {
ViewPager viewPager;
TabLayout tabLayout;
List<String> titles=new ArrayList<>();
List<Fragment> data=new ArrayList<>();
MyAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager=findViewById(R.id.viewpager);
tabLayout=findViewById(R.id.tablayout);
titles.add("xx");
titles.add("xx");
data.add(new yi());
data.add(new er());
adapter=new MyAdapter(getSupportFragmentManager());
viewPager.setAdapter(adapter);
tabLayout.setupWithViewPager(viewPager);
}
class MyAdapter extends FragmentPagerAdapter {
public MyAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return data.get(position);
}
@Override
public int getCount() {
return data.size();
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return titles.get(position);
}
}
}
public class yi extends Fragment {
private SearchView searchView;
private ListView lv;
private TextView tv;
private List<String> mGoods;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View inflate=inflater.inflate(R.layout.yi,container,false);
searchView = inflate.findViewById(R.id.search_view);
lv = inflate.findViewById(R.id.lv);
tv = inflate.findViewById(R.id.tv_goods);
initData();
init();
return inflate;
}
private void initData() {
mGoods = new ArrayList<>();
mGoods.add("商品1");
mGoods.add("商品2");
mGoods.add("商品3");
mGoods.add("商品4");
mGoods.add("商品5");
mGoods.add("商品6");
mGoods.add("商品7");
mGoods.add("商品8");
mGoods.add("商品9");
mGoods.add("商品10");
ArrayAdapter<String> adapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, mGoods);
lv.setAdapter(adapter);
}
private void init() {
searchView.setOnClickSearch(new ICallBack() {
@Override
public void SearchAciton(String string) {
for (int i = 0; i < mGoods.size(); i++) {
if (string.equals(mGoods.get(i))){
lv.setVisibility(View.GONE);
tv.setVisibility(View.VISIBLE);
tv.setText(string);
}
}
}
});
// 5. 设置点击返回按键后的操作(通过回调接口)
searchView.setOnClickBack(new bCallBack() {
@Override
public void BackAciton() {
lv.setVisibility(View.VISIBLE);
tv.setVisibility(View.GONE);
}
});
}
}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical">
<scut.carson_ho.searchview.SearchView
android:id="@+id/search_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:textSizeSearch="5dp"
app:textColorSearch="#3F51B5"
app:textHintSearch="输入查询关键字"
app:searchBlockHeight="56"
app:searchBlockColor="#ffffff" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
>
<TextView
android:id="@+id/tv_goods"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<ListView
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</FrameLayout>
</LinearLayout>