• 团队冲刺第二十一天


    团队相关博客:https://www.cnblogs.com/yumazemadui/p/12961361.html

    今天继续了饮食方面的完善,完善了大体的布局和显示界面,主要代码如下,但是一些食物的搭配类和相关的查询还未完工,明天继续此内容。

    复制代码
    package com.example.myapplication.food_list;
    
    import android.content.Context;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.ImageView;
    import android.widget.TextView;
    
    import com.example.myapplication.R;
    import com.example.myapplication.bean.FoodBean;
    
    import java.util.List;
    
    public class InfoListAdapter extends BaseAdapter {
        Context context;
        List<FoodBean> mDatas;
    
        public InfoListAdapter(Context context,List<FoodBean> mDatas){
            this.context=context;
            this.mDatas=mDatas;
        }
        //设定了ListView列表展示的行数
        @Override
        public int getCount() {
            return mDatas.size();
        }
        //返回指定的位置对应的数据
        @Override
        public Object getItem(int position) {
            return mDatas.get(position);
        }
    
        @Override
        public long getItemId(int position) {
            return position;
        }
    
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
           ViewHolder holder=null;
           if(convertView==null){
               //将布局转换成view计算的方法
               convertView= LayoutInflater.from(context).inflate(R.layout.item_infolist_lv,null);
               holder=new ViewHolder(convertView);
               convertView.setTag(holder);
           }else{
               holder=(ViewHolder)convertView.getTag();
           }
           //加载控件的显示
            //获取集合指定位置的数据
            FoodBean foodBean=mDatas.get(position);
           holder.titleTv.setText(foodBean.getTitle());
           holder.notTv.setText("不可匹配:"+foodBean.getNotmatch());
           holder.iv.setImageResource(foodBean.getPicId());
            return null;
        }
    
        class ViewHolder{
            ImageView iv;
            TextView titleTv,notTv;
            public ViewHolder(View view){
                iv=view.findViewById(R.id.item_info_iv);
                titleTv=view.findViewById(R.id.item_info_tv_title);
                notTv=view.findViewById(R.id.item_info_tv_notmatch);
            }
        }
    }
    复制代码
    复制代码
    package com.example.myapplication.food_list;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.os.Bundle;
    import android.widget.EditText;
    import android.widget.ImageView;
    import android.widget.ListView;
    
    import com.example.myapplication.R;
    import com.example.myapplication.bean.FoodBean;
    import com.example.myapplication.bean.FoodUtils;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class InfoListActivity extends AppCompatActivity {
        EditText searchEt;
        ImageView searchIv,flushIv;
        ListView showLv;
        //ListView内容数据源
        List<FoodBean> mDatas;
        List<FoodBean> allFoodList;
        private InfoListAdapter adapter;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_info_list);
            
            //查找空间
            initView();
            //找到对应的数据源
            mDatas=new ArrayList<>();
            allFoodList= FoodUtils.getAllFoodList();
            mDatas.addAll(allFoodList);
            //创建适配器
            adapter=new InfoListAdapter(this,mDatas);
            //设置适配器
            showLv.setAdapter(adapter);
    
        }
    
        private void initView() {
            searchEt=findViewById(R.id.info_et_search);
            searchIv=findViewById(R.id.info_iv_search);
            flushIv=findViewById(R.id.info_iv_flush);
            showLv=findViewById(R.id.infolist_lv);
    
        }
    }
    复制代码
    复制代码
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".food_list.InfoListActivity">
    
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:padding="10dp"
            android:background="#00FFFF">
            <ImageView
                android:id="@+id/info_iv_flush"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/flush"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"/>
            <ImageView
                android:id="@+id/info_iv_search"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/search"
                android:layout_toLeftOf="@+id/info_iv_flush"
                android:layout_centerVertical="true"
                android:layout_marginRight="20dp"
                android:layout_marginLeft="20dp"/>
            <EditText
                android:id="@+id/info_et_search"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_toLeftOf="@+id/info_iv_search"
                android:paddingLeft="20dp"
                android:background="@drawable/info_et_bg"
                android:layout_centerVertical="true"
                android:textColor="@color/white"/>
    
        </RelativeLayout>
    
        <ListView
            android:id="@+id/infolist_lv"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:divider="@color/dividerColor"
            android:dividerHeight="1dp">
        </ListView>
    
    </LinearLayout>
    复制代码
  • 相关阅读:
    树莓派4B-安装docker
    树莓派4B-挂载硬盘
    树莓派4B-修改软件源
    树莓派4B-初始化网络-静态ip
    树莓派4B-下载系统
    爬虫之路: 字体反扒升级版
    annotations导入报错
    [转]微信小程序全局分享转发控制实现——从此无需页面单独配置
    ollydbg 条件断点语法格式
    c++ CreateThread传递char*参数乱码解决办法
  • 原文地址:https://www.cnblogs.com/hhjing/p/13031354.html
Copyright © 2020-2023  润新知