展示到listview

package com.bawei.demo2week.fragment;

import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.bawei.demo2week.HttpUtil;
import com.bawei.demo2week.R;
import com.bawei.demo2week.adapter.XAdapter;
import com.bawei.demo2week.bean.JsonBean;
import com.google.gson.Gson;
import com.qy.xlistview.XListView;

import java.util.List;

/**

  • @Author:南方小酒馆°

  • @E-mail:

  • @Date:2019/2/21 19:16

  • @Description:描述信息
    */
    public class Fragment1 extends Fragment {

    private XListView xlist;
    private String url = “https://www.apiopen.top/meituApi?page=1”;
    private List<JsonBean.DataBean> list;
    private XAdapter adapter;

    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment1, container, false);
    xlist = view.findViewById(R.id.xlist);
    xlist.setPullLoadEnable(true);
    //上拉和下拉
    xlist.setXListViewListener(new XListView.IXListViewListener() {
    @Override
    public void onRefresh() {
    HttpUtil.getAstncTask(url,new HttpUtil.CallBackA(){

                 @Override
                 public void getData(String s) {
                     Gson gson = new Gson();
                     JsonBean bean = gson.fromJson(s,JsonBean.class);
                     list = bean.getData();
                     adapter = new XAdapter(list,getActivity());
                     xlist.setAdapter(adapter);
                     xlist.stopRefresh();
                 }
             });
         }
    
         @Override
         public void onLoadMore() {
             HttpUtil.getAstncTask(url,new HttpUtil.CallBackA(){
    
                 @Override
                 public void getData(String s) {
                     Gson gson = new Gson();
                     JsonBean bean = gson.fromJson(s,JsonBean.class);
                     List<JsonBean.DataBean> list2 = bean.getData();
                     list.addAll(list2);
                     adapter.notifyDataSetChanged();
                     xlist.stopLoadMore();
                 }
             });
         }
     });
     return view;
    

    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    HttpUtil.getAstncTask(url,new HttpUtil.CallBackA(){

         @Override
         public void getData(String s) {
             Gson gson = new Gson();
             JsonBean bean = gson.fromJson(s,JsonBean.class);
             list = bean.getData();
             adapter = new XAdapter(list,getActivity());
             xlist.setAdapter(adapter);
         }
     });
    

    }
    }

这里是引用

要实现在 EditText 中输入内容并展示 ListView 的效果,可以按照以下步骤: 1. 在布局文件中添加一个 EditText 和一个 ListView。 2. 创建一个适配器 Adapter,将数据和布局文件绑定。 3. 在 Activity 中获取 EditText 和 ListView 的实例,并为 EditText 添加文本改变监听器。 4. 在文本改变监听器中获取 EditText 的内容,并根据内容过滤数据源。 5. 将过滤后的数据源更新到适配器中,并调用适配器的 notifyDataSetChanged() 方法刷新 ListView。 以下是代码示例: 布局文件: ``` <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <EditText android:id="@+id/et_search" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Search..."/> <ListView android:id="@+id/lv_search_result" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout> ``` Adapter: ``` public class MyAdapter extends BaseAdapter { private List<String> mData; private LayoutInflater mInflater; public MyAdapter(Context context, List<String> data) { mData = data; mInflater = LayoutInflater.from(context); } @Override public int getCount() { return mData.size(); } @Override public String getItem(int position) { return mData.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = mInflater.inflate(R.layout.item_listview, parent, false); } TextView tv = convertView.findViewById(R.id.tv_item); tv.setText(getItem(position)); return convertView; } } ``` Activity: ``` public class MainActivity extends AppCompatActivity { private EditText mEtSearch; private ListView mLvSearchResult; private List<String> mData; private MyAdapter mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mEtSearch = findViewById(R.id.et_search); mLvSearchResult = findViewById(R.id.lv_search_result); mData = new ArrayList<>(Arrays.asList("Apple", "Banana", "Cherry", "Durian", "Elderberry")); mAdapter = new MyAdapter(this, mData); mLvSearchResult.setAdapter(mAdapter); mEtSearch.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) {} @Override public void onTextChanged(CharSequence s, int start, int before, int count) { String keyword = s.toString().toLowerCase(Locale.getDefault()); List<String> filteredData = new ArrayList<>(); for (String item : mData) { if (item.toLowerCase(Locale.getDefault()).contains(keyword)) { filteredData.add(item); } } mAdapter = new MyAdapter(MainActivity.this, filteredData); mLvSearchResult.setAdapter(mAdapter); mAdapter.notifyDataSetChanged(); } @Override public void afterTextChanged(Editable s) {} }); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值