1.使用ListView和Adapter实现购物商城

Android 布局文件

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/lv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ListView>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

  

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="match_parent"> <ImageView
android:id="@+id/iv"
android:layout_width="170dp"
android:layout_height="150dp"
> </ImageView> <TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="50dp"
android:text="111"> </TextView> <TextView
android:id="@+id/tv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:layout_marginLeft="-75dp"
android:text="222"> </TextView> </LinearLayout>

  java类(三个)

package com.example.myhomework3;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.ListView; import java.util.ArrayList;
import java.util.List; public class MainActivity extends AppCompatActivity { private List<shopping> shoppingList = new ArrayList<shopping>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initShopping();
shoppingAdapter shoppingAdapter = new shoppingAdapter(MainActivity.this,R.layout.item,shoppingList);
ListView listView = findViewById(R.id.lv1);
listView.setAdapter(shoppingAdapter);
} private void initShopping(){
shopping book = new shopping("限定","价格:500元",R.drawable.book);
shoppingList.add(book); shopping book1 = new shopping("书1","价格:26元",R.drawable.book1);
shoppingList.add(book1); shopping book2 = new shopping("书2","价格:29元",R.drawable.book2);
shoppingList.add(book2); shopping book3 = new shopping("书3","价格:36元",R.drawable.book3);
shoppingList.add(book3); shopping book4 = new shopping("书4","价格:18元",R.drawable.book4);
shoppingList.add(book4); shopping book5 = new shopping("书5","价格:33元",R.drawable.book5);
shoppingList.add(book5); shopping book6 = new shopping("书6","价格:52元",R.drawable.book6);
shoppingList.add(book6);
}
}
package com.example.myhomework3;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView; import java.util.List; public class shoppingAdapter extends ArrayAdapter {
private final int resourceId; public shoppingAdapter(Context context, int textViewResourceId, List<shopping> objects){
super(context,textViewResourceId,objects);
resourceId = textViewResourceId;
} @Override
public View getView(int position, View convertView, ViewGroup viewGroup){
shopping shopping = (com.example.myhomework3.shopping)getItem(position);
View view = LayoutInflater.from(getContext()).inflate(resourceId,null);
ImageView imageView = view.findViewById(R.id.iv);
TextView textView1 = view.findViewById(R.id.tv1);
TextView textView2 = view.findViewById(R.id.tv2);
imageView.setImageResource(shopping.getImageId());
textView1.setText(shopping.getName());
textView2.setText(shopping.getPrice());
return view;
}
package com.example.myhomework3;

public class shopping {
private String name;
private String price;
private int imageId; public shopping(String name, String price, int imageId) {
this.name = name;
this.price = price;
this.imageId = imageId;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPrice() {
return price;
} public void setPrice(String price) {
this.price = price;
} public int getImageId() {
return imageId;
} public void setImageId(int imageId) {
this.imageId = imageId;
}
}

Android作业0930的更多相关文章

  1. Android作业分组与选题

    期末大作业 序号 题目 组员分工 完成度 1 基于安卓系统的游戏开发 2 设计一个安卓手机小游戏 3 Android平台应用——音乐播放器设计 4 基于Android技术的个人博客 5 电子阅读器 6 ...

  2. 简单计算器 安卓 Android 作业

    Android老师布置的课程作业——简单计算器 功能要求实现四则运算,参考界面见下图: 首先给各位老铁提供apk安装包以及项目压缩包,略表诚意~ github地址:https://github.com ...

  3. Android作业list

    作业1. 请在自己的电脑上完成Android的安装与配置,并完成Hello Android项目.上交自己与项目的合照,将照片传至QQ群中. ------------------------------ ...

  4. Android作业

    一.设置跑马灯功能   使用滚动字幕显示标题“请选择你喜欢哪种花” <?xml version="1.0" encoding="utf-8"?>&l ...

  5. Android作业 0923

    计算器小应用 package com.example.myhomework2; import androidx.appcompat.app.AppCompatActivity; import andr ...

  6. Android作业10/07

    1.多个Activity界面实现数据的传递 <?xml version="1.0" encoding="utf-8"?> <androidx. ...

  7. 错误提示”void is an invalid type for the variable“

    今晚做android作业,出现错误提示:void is an invalid type for the variable, invalid:无效的  variable:变量,在网上找了一下后知道是 方 ...

  8. Android——手机内部文件存储(作业)

    作业:把用户的注册信息存储到文件里,登录成功后读出并显示出来 activity_practice2的layout文件: <?xml version="1.0" encodin ...

  9. Android——SharedPreferences存储(作业)

    作业:制作一个登录界面,以SP方式存储用户名.用户下次登录时自动显示上次填写的用户名 layout文件: <?xml version="1.0" encoding=" ...

随机推荐

  1. Windows 远程桌面鼠标光标不可见

    一.问题描述 通过在云端的主机上部署 frp 服务,实现「使用Windows 远程桌面(RDP)从互联网侧访问内网的主机」.但是,使用 Windows 自带的远程桌面工具 RDP 连接到另一台计算机时 ...

  2. 高可用集群之corosync+pacemaker

    1.概念 在传统Linux集群种类,主要分了三类,一类是LB集群,这类集群主要作用是对用户的流量做负载均衡,让其后端每个server都能均衡的处理一部分请求:这类集群有一个特点就是前端调度器通常是单点 ...

  3. vagrant安装的坑

    关于VAGRANT安装过程的坑 标签: 虚拟化     闲来无聊 试试vagrant虚拟化技术 安装过程中坑太多了 所以记录下方便以后 注意: 执行 vagrant up 命令报错 如下   PS F ...

  4. 多层v-for循环嵌套导致v-model双向绑定失败,页面不重新渲染

    数据格式是数组包对象,对象里面再包数组,数组再包对象,如下: 外层for遍历出editInfo里面所有的属性,内层for遍历Options. 最终实现样子 两个问题: 1.点加减按钮的时候往optio ...

  5. Labview学习之路(十三)数组函数

    本文章介绍一下函数选版中的数组函数,一眼看懂没什么特殊地方的就不说了 (一)数组大小 返回I32类型的数或者数组. 什么是I32类型?就是32位有符号整型, 有符号什么意思?就是在32位数据中最高做符 ...

  6. Android Studio 如何导出和导入自己的常用设置,避免重复制造轮子。加快开发速度

    Android Studio 如何导出和导入自己的常用设置,避免重复制造轮子.加快开发速度 作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 在使用 A ...

  7. gcd(a,b) 复杂度证明

    (b,a%b) a%b<=min(b,a%b)/2 a>=b时每次至少缩减一半 a<b时下次a>b 所以复杂度最多2log(max(a,b)) 证明:a%b<=min(a ...

  8. DLX AlgorithmX

    AlgorithmX精确覆盖: https://en.wikipedia.org/wiki/Knuth's_Algorithm_X DLX的基础算法 https://zh.wikipedia.org/ ...

  9. 关于JavaScript点击按钮打开多个页面被浏览器以广告嫌疑拦截怎么解决

    JS点击按钮打开新的标签页,工作中遇到需要点击按钮打开一个或多个,需要用到window.open() 工作中我们可能需要打开多个,看以下代码: var data = [{ "id" ...

  10. 解决ASP.NET上传文件大小限制------(转载人家的博客很好用,略作修改)

    解决ASP.NET上传文件大小限制 (2012-06-26 15:18:01) 转载▼ 标签: it   第一种方法,主要适用于IIS6.0版本 一.修改配置Web.Config文件中的httpRun ...