使用ListView实现网上订餐首页

本文实例为大家分享了ListView实现网上订餐首页的具体代码,供大家参考,具体内容如下

效果图

布局文件

android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".SimpleAdapterActivity">
<include layout="@layout/title"/>
 <ImageView
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:src="@drawable/chinaweidao"/>
  <ListView
    android:dividerHeight="5dp"
    android:id="@+id/lv_listview"
    android:layout_marginTop="10dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
</LinearLayout>
android:layout_width="match_parent"
  android:layout_height="100dp"
  android:layout_margin="10dp">
  <ImageView
    android:id="@+id/food_image"
    android:layout_width="80dp"
    android:layout_height="80dp"/>
  <LinearLayout
    android:orientation="vertical"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="3">
    <TextView
      android:id="@+id/food_name"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="标题"
      android:textSize="16sp"
      android:gravity="center_vertical"
      android:textColor="#000000"/>
    <TextView
      android:id="@+id/food_content"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="内容"
      android:textSize="12sp"
      android:gravity="center_vertical"/>
    <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">
      <include layout="@layout/welfarestyle"/>
      <TextView
        android:id="@+id/tv_welfare"
        android:layout_marginLeft="10dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center_vertical"/>
    </LinearLayout>

  </LinearLayout>
  <LinearLayout
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1">
    <TextView
      android:id="@+id/tv_time"
      android:layout_width="wrap_content"
      android:layout_height="match_parent"
      android:text="时间"
      android:textSize="10sp"
      android:gravity="center_vertical"/>

</LinearLayout>

title.xml

android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/title_style">
<TextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:text="店铺"
    android:textColor="#ffffff"
    android:textSize="20sp"
    android:textStyle="bold"
    android:gravity="center"/>

设置福利图标的样式

android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
    android:layout_marginLeft="10dp"
    android:layout_width="30dp"
    android:layout_height="20dp"
    android:text="福利"
    android:textColor="#fff"
    android:background="@drawable/welfare"/>

点击listview后跳转的页面布局

android:layout_width="match_parent"
android:layout_height="400dp"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_margin="5dp"
tools:context=".FirstActivity">
<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="菜单"
    android:layout_margin="10dp"
    android:textSize="20dp"
    android:textColor="#000000"/>
<ListView
    android:layout_margin="8dp"
    android:id="@+id/lv_food"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_margin="10dp">
<ImageView
    android:id="@+id/first_image"
    android:layout_width="80dp"
    android:layout_height="80dp"/>
  <LinearLayout
    android:orientation="vertical"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="3">
    <TextView
      android:id="@+id/first_name"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="标题"
      android:textSize="16sp"
      android:gravity="center_vertical"
      android:textColor="#000000"/>
    <TextView
      android:id="@+id/first_ingredient"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="内容"
      android:textSize="12sp"
      android:textColor="#000000"
      android:gravity="center_vertical"/>
    <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">/>
      <TextView
        android:id="@+id/tv_money"
        android:layout_marginLeft="10dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center_vertical"
        android:text="价格"/>
</LinearLayout>

</LinearLayout>
<LinearLayout
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1.5">
    <Button
      android:id="@+id/first_btn_join"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="加入购物车"
      android:background="@android:drawable/btn_default"
      android:layout_gravity="center_vertical" />

</LinearLayout>
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_margin="10dp">
<ImageView
    android:id="@+id/first_image"
    android:layout_width="80dp"
    android:layout_height="80dp"/>
  <LinearLayout
    android:orientation="vertical"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="3">
    <TextView
      android:id="@+id/first_name"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="标题"
      android:textSize="16sp"
      android:gravity="center_vertical"
      android:textColor="#000000"/>
    <TextView
      android:id="@+id/first_ingredient"
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:layout_marginLeft="10dp"
      android:text="内容"
      android:textSize="12sp"
      android:textColor="#000000"
      android:gravity="center_vertical"/>
    <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">/>
      <TextView
        android:id="@+id/tv_money"
        android:layout_marginLeft="10dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center_vertical"
        android:text="价格"/>
</LinearLayout>

</LinearLayout>
<LinearLayout
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1.5">
    <Button
      android:id="@+id/first_btn_join"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="加入购物车"
      android:background="@android:drawable/btn_default"
      android:layout_gravity="center_vertical" />

</LinearLayout>

java文件

public class SimpleAdapterActivity extends AppCompatActivity {
  private ListView listView;
  private List<Map<String,Object>> data = new ArrayList<>();

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_list_view);
//    ActionBar actionBar = getSupportActionBar();
    if (actionBar!= null){
      actionBar.hide();
    }
    initView();
  }
  public void initView(){
    listView = findViewById(R.id.lv_listview);
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("icon", R.drawable.shop1);
    map.put("name", "蛋糕房");
    map.put("content", "月售996\n起送¥35|配送¥5");
    map.put("welfare","进店可获得一个香草冰淇淋");
    map.put("time","配送约2.5小时");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.shop2);
    map.put("name", "爪哇咖啡.西餐.酒吧");
    map.put("content", "月售11\n起送¥20|配送¥7");
    map.put("welfare","进店即可送一杯拿铁咖啡");
    map.put("time","配送约40分钟");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.shop3);
    map.put("name", "必胜客");
    map.put("content", "月售10\n起送¥15|配送¥6");
    map.put("welfare","下单即可获得一个¥5优惠券");
    map.put("time","配送约20分钟");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.shop4);
    map.put("name", "艾尚夜宵");
    map.put("content", "月售496\n起送¥20|配送¥13");
    map.put("welfare","下单即可获得一个¥15优惠券");
    map.put("time","配送约42分钟");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.shop5);
    map.put("name", "上岛咖啡");
    map.put("content", "月售800\n起送¥30|配送¥10");
    map.put("welfare","下单即可获得一个¥30优惠券");
    map.put("time","配送约30分钟");
    data.add(map);

    SimpleAdapter adapter = new SimpleAdapter(this,
        data,R.layout.listview_item,new String[]{"icon","name","content","welfare","time"},
        new int []{R.id.food_image,R.id.food_name,R.id.food_content,R.id.tv_welfare,R.id.tv_time});
    //设置listview的适配器,这里使用SimpleAdapter;
    listView.setAdapter(adapter);
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
      @Override
      public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
        Map map = data.get(i);
        /* Toast.makeText(SimpleAdapterActivity.this, "你点击了"+map.get("name")+map.get("content"), Toast.LENGTH_SHORT).show();*/
        Intent intent = new Intent(SimpleAdapterActivity.this,FirstActivity.class);
        startActivity(intent);
      }
    });
  }
}
public class FirstActivity extends AppCompatActivity {
  private Button btnjoin;
  private ListView listView;
  private List<Map<String,Object>> data = new ArrayList<>();

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_first);
    btnjoin = findViewById(R.id.first_btn_join);
    initView();
  }
  public void initView(){
    listView = findViewById(R.id.lv_food);
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("icon", R.drawable.food1);
    map.put("name", "招牌丰收硕果12寸");
    map.put("ingredient", "水果、奶油、面包、鸡蛋");
    map.put("money","¥198");
    map.put("btn","加入购物车");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.food2);
    map.put("name", "玫瑰花创意蛋糕");
    map.put("ingredient", "玫瑰花、奶油、鸡蛋");
    map.put("money","¥148");
    map.put("btn","加入购物车");
    data.add(map);
    map = new HashMap<String, Object>();
    map.put("icon", R.drawable.food3);
    map.put("name", "布朗熊与可妮");
    map.put("ingredient", "奶油、巧克力、果粒夹层");
    map.put("money","¥98");
    map.put("btn","加入购物车");
    data.add(map);

    SimpleAdapter adapter = new SimpleAdapter(this,
        data,R.layout.activity_first_list,new String[]{"icon","name","ingredient","money","btn"},
        new int []{R.id.first_image,R.id.first_name,R.id.first_ingredient,R.id.tv_money,R.id.first_btn_join});
    //设置listview的适配器,这里使用SimpleAdapter;
    listView.setAdapter(adapter);

 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java吃货联盟订餐系统代码实例

    本文实例为大家分享了Java订餐系统的具体代码,供大家参考,具体内容如下 package cn.practice1200; import java.util.Scanner; public class Eater_Alliance { /** * 吃货联盟订餐系统 * * @author QCD * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner

  • Java实现简单订餐系统

    本文实例为大家分享了Java实现简单订餐系统的具体代码,供大家参考,具体内容如下 import java.util.Scanner; import java.util.*; public class OrderingMsg { public static void main(String[] args) { // 数据主体:一组订单信息 String[] names = new String[4]; // 订餐人名称 String[] dishMegs = new String[4]; // 所

  • java实现订餐系统

    本文实例为大家分享了java实现订餐系统的具体代码,供大家参考,具体内容如下 import java.util.Scanner; public class versionAlliance { public static void main(String[] args) { Scanner in = new Scanner(System.in); String[] names=new String[5];//客户姓名 String[] dishes= {"红烧带鱼","鱼香肉丝

  • 使用ListView实现网上订餐首页

    本文实例为大家分享了ListView实现网上订餐首页的具体代码,供大家参考,具体内容如下 效果图 布局文件 android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".SimpleAdapterActivity"> <include la

  • SSH框架网上商城项目第15战之线程、定时器同步首页数据

    上一节我们做完了首页UI界面,但是有个问题:如果我在后台添加了一个商品,那么我必须重启一下服务器才能重新同步后台数据,然后刷新首页才能同步数据.这明显不是我们想要的效果,一般这种网上商城首页肯定不是人为手动同步数据的,那么如何解决呢?我们需要用到线程和定时器来定时自动同步首页数据. 1. Timer和TimerTask 我们需要用到Timer和TimerTask两个类.先来介绍下这两个类. Timer是一种工具类,在java.util包中,线程用其安排以后在后台线程中执行的任务.可安排任务执行一

  • SSH框架网上商城项目第16战之Hibernate二级缓存处理首页热门显示

    网上商城首页都有热门商品,那么这些商品的点击率是很高的,当用户点击某个热门商品后需要进入商品的详细信息页面,就像淘宝里面那样.那么每次点击都要去后台查询一下该商品的详细信息,就会发送相应的sql语句,每次刷新一下详细页面也会发sql语句,这样的话,性能肯定会受到很大的影响.那么使用Hibernate的二级缓存就可以解决这个问题. 有些人可能会想,我们可以使用重定向,这样的话,在用户第一次访问的时候把信息查出来放到session中,以后每次用户刷新就可以去session中拿了,这样就不用去数据库中

  • Java从零编写吃货联盟订餐系统全程讲解

    目录 项目需求 项目环境准备 案例覆盖的技能点 难点分析 1.环境搭建和相关配置 2.使用数据库保存Order订单以及Food菜单信息 3.Dao层实现类中的增删改查方法的编写 项目实现思路 1.数据初始化 2.实现菜单切换 3.实现查看餐袋 4.实现我要订餐 5.实现签收订单 6.实现删除订单 7.实现我要点赞 代码展示 1.订单信息-Order类 2.菜品信息-Food类 3.定义FoodDao接口 4.定义FoodDaoImpl实现类 5.定义OrderDao接口 6.定义OrderDao

  • C语言实现外卖管理系统

    本文为大家分享了C语言外卖管理系统的具体代码,供大家参考,具体内容如下 内容 说明(废话):上学期写的课程设计,主题是外卖管理系统,希望可以模拟网上订餐,店家工作,专人管理的过程.并实现注册与登录以及基本信息的输出,因为个人比较懒,一直没有整理上去,今天得空,要是得到大家的宝贵意见的话,会不胜荣幸. 重点内容   三端登录 :分别为管理员,用户以及店主:两端注册,分别为用户以及店铺,其中店铺的注册成功需要得到管理员的审核.   管理员端可以查看店铺信息,店铺信息修改(分为增删改查),处理申请店铺

  • Android仿QQ首页ListView左滑置顶、删除功能

    Android 仿QQ首页ListView左滑置顶.删除等实现源码,具体内容如下 效果图 实现源码:package com.duguang.baseanimation.ui.listivew.deletelistview; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.util.TypedValue; import android.

  • SSH框架网上商城项目第14战之商城首页UI的设计

    前面我们利用EasyUI和SSH搭建好了后台的基本框架,做好了后台的基本功能,包括对商品类别的管理和商品的管理等,这一节我们开始搭建前台页面. 做首页的思路:假设现在商品的业务逻辑都有了,首先我们需要创建一个监听器,在项目启动时将首页的数据查询出来放到application里,即在监听器里调用后台商品业务逻辑的方法. 1.  首页商品显示逻辑 在首页,我们只显示商品热点类别中的前几个商品,比如热点类别有儿童休闲类,女性休闲类,男性休闲类,那我们会有三个板块来显示不同的商品类,每个类别里再显示几个

  • 6步轻松实现两个listView联动效果

    看了网上更新的好多联动demo,感觉写的不是很简洁(表示不知道他们在说什么) 自己写了一个简单的Demo分享给大家- -! 效果图: 直接上车,少说废话! 所用到以下的这几个依赖,直接粘到Build.gradle文件中 compile 'com.squareup.picasso:picasso:2.5.2' compile 'io.reactivex:rxjava:1.2.7' compile 'io.reactivex:rxandroid:1.2.1' compile 'com.squareu

  • 仿IOS效果 带弹簧动画的ListView

    最近项目打算做一个界面,类似于dayone首页的界面效果,dayone 是一款付费应用,目前只有IOS端.作为一个资深懒惰的程序员,奉行的宗旨是绝对不重复造一个轮子.于是乎,去网上找一大堆开源项目,发现没有找到合适的,然后,只能硬着头皮自己来了.先看看效果: 效果图 其实写起来也比较简单,就是控制ListView的头部和底部的高度就可以了, 如果用RecycleView实现起来也是一样,只是RecycleView添加头和尾巴稍微麻烦一点,处理点击事件也不是很方便,所以就基于ListView去实现

  • android listview 水平滚动和垂直滚动的小例子

    网上有很多解决 android listview 水平和垂直滚动的代码,我没有按照他们说的做(以前没搜到 O(∩_∩)O~) 我采用的是添加HorizontalScrollViewJava代码 复制代码 代码如下: < ScrollView android:id="@+id/ScrollView01" android:layout_height="300px" android:layout_x="16px" android:layout_y

随机推荐