滚动视图

<ScrollView

android: layout_width="fill_parent"

android: layout_height="fill_parent">

</ScrollView>

滚动试图指的是提供一个专门的容器,可以装下多于屏幕宽度的组件,而后采用拖拽的方式

显示所有在ScrollView中的组件

注意:滚动视图中只能有一个组件

列表视图【ListView、SimpleAdapter类】

   1.ListView控件的特点:每个列表项独占一行,每行的布局都相同。

    2.使用SimpleAdapter类设置列表视图

    SimpleAdapter类的主要功能是将List集合的数据转换为ListView可以支持的数据。

     new SimpleAdapter ( 上下文对象this, 列表的数据, 列表项的布局资源文件,

键名数组【new String[ ]{"标签名"}】,列表项所有控件的索引值【new int[ ]{R.id.控件id】)

方法

描述

public SimpleAdapter ( Context context,

List<? extends Map<String,?>>,

int resource, String[] from, int[] to)

创建SimpleAdapter对象,需要传入Context对象,封装的List集合,要使用的布局文件ID,需要显示的key(对应Map)、组件的ID

public int getCount()

得到保存集合的个数

public Object getItem(int position)

取得指定位置的对象

public long getItemId(int position)

取得指定位置对象的ID

public void notifyDataSetChanged()

当列表项发生改变时,通知更新显示ListView

列表项显示模板——res/layout/data_list.xml

ListView事件

方法

描述

public void setOnItemSelectedListener(

AdapterView.OnItemSelectedListener listener)

选项选中时触发

public void setOnItemClickListener(

AdapterView.OnItemClickListener listener)

选项单击时触发

public void setOnItemLongListener(

AdapterView.OnItemLongListener listener)

选项长按时触发

 1         ListView lv=(ListView)findViewById(R.id.listView);
2 List<Map<String,Object>> list=new ArrayList<Map<String,Object>>();
3 //从数组资源中获取数据
4 String[] data=getResources().getStringArray(R.array.haha);
5 for(int i=0;i<data.length;i++){
6 Map<String,Object> map=new HashMap<String,Object>();
7 map.put("img", R.drawable.b);
8 map.put("txt", data[i]);
9 list.add(map);
10 }
11 //参数列表:上下文对象、列表的数据、列表项的布局资源文件、键名数组、列表项所有控件的索引值
12 SimpleAdapter adapter=new SimpleAdapter(this, list,R.layout.data_list, new String[]{"img","txt"}, new int[]{R.id.Dataimg,R.id.Datatv});
13 lv.setAdapter(adapter);
14
15 //设置ListView的单击事件
16 lv.setOnItemClickListener(new OnItemClickListener() {
17 /** ListView选项单击时触发
18 * adp 取得AdapterView对象
19 * view 取得AdapterView的父组件
20 * position 取得Adapter的操作位置
21 * id 取得ListView所在行的编号
22 */
23 public void onItemClick(AdapterView<?> adp, View view, int position, long id) {
24 Object obj=adp.getItemAtPosition(position);
25 Map<String, Object> objs=(Map<String, Object>)obj;
26 String str= (String)objs.get("txt");
27 Toast.makeText (Listview.this, str, 1000).show();
28 }
29 });
30

滚动视图、列表视图[ListView、SimpleAdapter类]的更多相关文章

  1. android学习--视图列表(ListView和ListActivity)

    说明: 视图列表(ListView和ListActivity)与AutoComplete.Spinner类似,它们都须要一个供显示的列表项,能够须要借助于内容Adapter提供显示列表项 创建List ...

  2. Display a Detail View with a List View 主子视图-列表视图与详细信息视图同时显示

    In this lesson, you will learn how to display a Detail View together with a List View. For this purp ...

  3. Filter List Views 筛选器列表视图

    In this lesson, you will learn how to filter a List View. Three techniques, based on different scena ...

  4. C#开发BIMFACE系列28 服务端API之获取模型数据13:获取三维视点或二维视图列表

    系列目录     [已更新最新开发文章,点击查看详细] 本篇主要介绍如何获取一个模型中包含的三维视点或二维视图列表. 请求地址:GET https://api.bimface.com/data/v2/ ...

  5. Android 自学之列表视图ListView和ListActivity

    ListView是手机系统中使用非常广泛的一种组件,它以垂直列表的形式显示所有列表项. 创建ListView有两种方式: 直接使用ListView创建. 让Activity继承ListActivity ...

  6. Android——列表视图(ListView)

    列表视图是android中最常用的一种视图组件,它以垂直列表的形式列出需要显示的列表项.在android中有两种方法向屏幕中添加列表视图:一种是直接使用ListView组件创建:另外一种是让Activ ...

  7. C#:列表视图操作类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...

  8. React-Native基础_5.列表视图ListView

    列表视图ListView 用来显示垂直滚动列表,需要指定两个东西,1 数据的来源 dataSource,2 渲染列表的条目布局 rendRow 'use strict' import React, { ...

  9. WorldWind源码剖析系列:插件列表视图类PluginListView和插件列表视图项类PluginListItem

    WorldWind中的插件类是个庞大的类,可以说从软件设计层面上统筹可扩展的插件体系的设计思想是WorldWind中的精华,值得学习和借鉴.插件体系中的所用到的类可以分为两大类,一类是插件类Plugi ...

随机推荐

  1. 分享Nginx在Windows下的管理命令(bat文件)

    话不多说,复制下面的内容,存成bat文件,放到nginx目录下. ====================================================@echo offrem 当前 ...

  2. 代码审计之seacms v6.45 前台Getshell 复现分析

    1.环境: php5.5.38+apache+seacms v6.45 seacms目录结构: │─admin //后台管理目录 │ │─coplugins //已停用目录 │ │─ebak //帝国 ...

  3. vue-cli3.x npm create projectName 报错: Unexpected end of JSON input while parsing near......

    npm 版本与node版本还有webpack版本之间的问题 清理缓存,“ npm cache clean --force " 一切OK

  4. spark开发常见问题之一:java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

    最近在学习研究pyspark机器学习算法,执行代码出现以下异常: 19/06/29 10:08:26 ERROR Shell: Failed to locate the winutils binary ...

  5. 支持向量机 (二): 软间隔 svm 与 核函数

    软间隔最大化(线性不可分类svm) 上一篇求解出来的间隔被称为 "硬间隔(hard margin)",其可以将所有样本点划分正确且都在间隔边界之外,即所有样本点都满足 \(y_{i ...

  6. Linux下Flume的安装部署

    一.前置条件 Flume需要依赖JDK 1.8+,JDK安装方式见本仓库: Linux环境下JDK安装 二 .安装步骤 2.1 下载并解压 下载所需版本的Flume,这里我下载的是CDH版本的Flum ...

  7. angular2最详细的开发环境搭建过程

    本文所需要的源代码,从 http://files.cnblogs.com/files/lingzhihua/angular2-quickstart.rar 下载 angular官方推荐使用quicks ...

  8. 系统学习 Java IO (五)----使用 SequenceInputStream 组合多个流

    目录:系统学习 Java IO---- 目录,概览 SequenceInputStream 可以将两个或多个其他 InputStream 合并为一个. 首先,SequenceInputStream 将 ...

  9. java写出PDF

    1\包 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</ar ...

  10. java中更新文件时,指定原文件的编码格式,防止编码格式不对,造成乱码

    1.pom中添加引入cpdetector(一个可以自动检测文本编码格式的项目) //pom中添加引入cpdetector(一个可以自动检测文本编码格式的项目) <dependency> & ...