首页 > 其他分享 >list

list

时间:2023-06-18 09:55:55浏览次数:16  
标签:String list id import android public view

1 activaty_main

<?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=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        android:textSize="26sp" />

    <ListView
        android:id="@+id/list_view"
        android:layout_width="match_parent"
        android:layout_height="658dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="结束!"
        android:textSize="26sp" />

</LinearLayout>

2 listview_item

<?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">

    <TextView
        android:id="@+id/fruit_name"
        android:layout_gravity="center_vertical"
        android:textSize="30sp"
        android:textColor="#000000"
        android:text="name"
        android:layout_marginLeft="10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <TextView
        android:id="@+id/fruit_price"
        android:layout_gravity="center_vertical"
        android:textColor="#ff0000"
        android:text="price"
        android:textSize="30sp"
        android:layout_marginLeft="10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <TextView
        android:id="@+id/fruit_id"
        android:layout_gravity="center_vertical"
        android:textColor="#ff0000"
        android:text="1"
        android:textSize="30sp"
        android:layout_marginLeft="10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

</LinearLayout>

3 Activity_main

package com.example.listview;

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 {
    ListView listView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //第一步:绑定控件
        listView=findViewById(R.id.list_view);
        //第二步:准别数据
        List<MyData> data = new ArrayList<>();
        for(int i=0;i<10;i++){
            MyData pineapple=new MyData(i,"菠萝","¥16.9 元/KG");
            data.add(pineapple);
        }
        //第三步:设计每一个列表项的子布局,即listview_xml文件
        //第五步:定义适配器 控件 -桥梁-数据
        ListViewAdapter adapter=new ListViewAdapter(MainActivity.this,R.layout.listview_item,data);
        listView.setAdapter(adapter);
    }
}

4 listviewadapter

package com.example.listview;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

import java.util.List;

public class ListViewAdapter extends ArrayAdapter<MyData> {
    public  ListViewAdapter(Context context, int resource, List<MyData> objects) {
        super(context, resource, objects);
    }
    //每个子项被滚动到屏幕内的时候会被调用
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        MyData data=getItem(position);//得到当前项的 Fruit 实例
        //为每一个子项加载设定的布局
        View view= LayoutInflater.from(getContext()).inflate(R.layout.listview_item,parent,false);

        //-----------------------待修改的部分开始-----------------------------------------------------
        //分别获取 image view 和 textview 的实例
        TextView id=view.findViewById(R.id.fruit_id);
        TextView fruitname =view.findViewById(R.id.fruit_name);
        TextView fruitprice=view.findViewById(R.id.fruit_price);

        fruitname.setText(data.getName());
        fruitprice.setText(data.getPrice());
        id.setText(String.valueOf(data.getImageID()));

        //-----------------------待修改的部分结束-----------------------------------------------------

        return view;
    }
}

5 Mydata

package com.example.listview;

public class MyData {
    private int imageID;
    private String name;
    private String price;
    public int getImageID() {
        return imageID;
    }
    public String getName() {
        return name;
    }
    public String getPrice() {
        return price;
    }
    public MyData(int imageID, String name, String price) {
        this.imageID = imageID;
        this.name = name;
        this.price = price;
    }
}

标签:String,list,id,import,android,public,view
From: https://www.cnblogs.com/luoshubk/p/17488722.html

相关文章

  • Java_Base7之接口和抽象类、集合类ArrayList、HashSet、HashMap
    一、接口和抽象类(了解)接口:规则,规范行为。只能有抽象方法,一个类可以同时实现多个接口,必须重写所有抽象方法。 接口与接口是继承,接口与类是实现。接口是对继承的补充。 interfaceimplements定义一个接口publicinterfaceInter{ //默认修饰符publicabstract可以省略 pu......
  • Windows系统TASKLIST命令的作用与用法
    一、tasklist命令  TASKLIST命令显示本地计算机或远程计算机上当前正在运行的进程列表。命令结合筛选器一起使用,可以按照我们的要求进行过滤,查找我们需要了解的进程信息。二、tasklist怎么用?1、使用格式Tasklist[/s<Computer>[/u[<Domain>\]<UserName>[/p<Password>]]][{/......
  • CMakeLists --- 指定安装目录 CMAKE_INSTALL_PREFIX
    cmake指定makeinstall时的安装目录:通过设置CMAKE_INSTALL_PREFIX的值来控制。有两种方法:1.在执行cmake时,指定安装目录:cmake-DCMAKE_INSTALL_PREFIX=/xxx/x..2.直接在CMakeLists.txt中设置set(CMAKE_INSTALL_PREFIX/xxx/x) 编译完成后,执行makeinstall即可。......
  • CMakeLists --- 设置rpath_link方法 编译报错try using -rpath or -rpath-link)
    指令:add_link_options("LINKER:-rpath-link,${THIRD_LIBS_DIR}")THIRD_LIBS_DIR:需要链接的库的目录作用:编译生成一个可执行文件时,依赖一个动态库A,动态库A同时又依赖动态库B.如果我们没有显示集成动态库B时,链接器会去-rpath-link设置的目录中寻找依赖项。 例子:1.库A,依赖库B......
  • WPF ListBoxItem 取消hover高亮,仅显示选中高亮
     ListBoxItem取消hover高亮,仅显示选中高亮;其他控件与此类似 <StyleTargetType="{x:TypeListBoxItem}"><SetterProperty="Background"Value="Transparent"/><SetterProperty="Template">......
  • C#对List的元素按属性排序
    C#对List元素排序有几种方法。方法一、使用LinqList<User>sortedList=list.OrderBy(o=>o.ID).ToList();如果按降序排序,可以使用OrderByDescending方法:List<User>sortedList=list.OrderByDescending(o=>o.ID).ToList();方法二、扩展IComparable接口示例:publiccl......
  • VCL下ListBox自画
    最终效果图: ListBox的两个设置:自画事件:LixtBox1DrawItemprocedureTForm1.LixtBox1DrawItem(Control:TWinControl;Index:Integer;Rect:TRect;State:TOwnerDrawState);beginWithLixtBox1.CanvasDoBeginBrush.Color:=$00FF9184;//设置背景......
  • springboot 自定义listener 添加环境变量。 抄的springboot项目去掉了一些不用的ja
    1.自定义listener实现 ApplicationListener<ApplicationEnvironmentPreparedEvent>,Ordered(如果要设置优先级可以实现Ordered接口,注意order值越小优先级越高)publicclassMyListenerimplementsApplicationListener<ApplicationEnvironmentPreparedEvent>,Ordered{......
  • Nginx [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in
    Nginx更新后经常遇到这样的问题,解决方法:123fuser-k80/tcp&&/etc/init.d/nginxstart或killall-9nginx&&/etc/init.d/nginxstart......
  • python list 从列表A删除列表B的几种方法
    问题描述:a=['a','b','c','d','e','f']b=['a','c','d']想要得到一个列表C=a-b的元素即c=['b','e','f']转换成集合删除c=list(set(a).difference......