`
cgs1999
  • 浏览: 536192 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

范例HelloListView

阅读更多
Android docs中的范例,简单翻译整理如下。
--------------------------------------------
1、创建新项目,名称HelloListView;

2、在res/layout/目录下新建list_item.xml,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="10dp"
    android:textSize="16sp" >
</TextView>


3、打开HelloListView.java,修改类的继承为ListActivity:
public class HelloListView extends ListActivity {


4、修改HelloListView.java,在最前面增加变量定义:
  static final String[] COUNTRIES = new String[] {
    "Afghanistan", "Albania", "Algeria", "American Samoa", "Andorra",
    "Angola", "Anguilla", "Antarctica", "Antigua and Barbuda", "Argentina",
    "Armenia", "Aruba", "Australia", "Austria", "Azerbaijan",
    "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium",
    "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia",
    "Bosnia and Herzegovina", "Botswana", "Bouvet Island", "Brazil", "British Indian Ocean Territory",
    "British Virgin Islands", "Brunei", "Bulgaria", "Burkina Faso", "Burundi",
    "Cote d'Ivoire", "Cambodia", "Cameroon", "Canada", "Cape Verde",
    "Cayman Islands", "Central African Republic", "Chad", "Chile", "China",
    "Christmas Island", "Cocos (Keeling) Islands", "Colombia", "Comoros", "Congo",
    "Cook Islands", "Costa Rica", "Croatia", "Cuba", "Cyprus", "Czech Republic",
    "Democratic Republic of the Congo", "Denmark", "Djibouti", "Dominica", "Dominican Republic",
    "East Timor", "Ecuador", "Egypt", "El Salvador", "Equatorial Guinea", "Eritrea",
    "Estonia", "Ethiopia", "Faeroe Islands", "Falkland Islands", "Fiji", "Finland",
    "Former Yugoslav Republic of Macedonia", "France", "French Guiana", "French Polynesia",
    "French Southern Territories", "Gabon", "Georgia", "Germany", "Ghana", "Gibraltar",
    "Greece", "Greenland", "Grenada", "Guadeloupe", "Guam", "Guatemala", "Guinea", "Guinea-Bissau",
    "Guyana", "Haiti", "Heard Island and McDonald Islands", "Honduras", "Hong Kong", "Hungary",
    "Iceland", "India", "Indonesia", "Iran", "Iraq", "Ireland", "Israel", "Italy", "Jamaica",
    "Japan", "Jordan", "Kazakhstan", "Kenya", "Kiribati", "Kuwait", "Kyrgyzstan", "Laos",
    "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg",
    "Macau", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands",
    "Martinique", "Mauritania", "Mauritius", "Mayotte", "Mexico", "Micronesia", "Moldova",
    "Monaco", "Mongolia", "Montserrat", "Morocco", "Mozambique", "Myanmar", "Namibia",
    "Nauru", "Nepal", "Netherlands", "Netherlands Antilles", "New Caledonia", "New Zealand",
    "Nicaragua", "Niger", "Nigeria", "Niue", "Norfolk Island", "North Korea", "Northern Marianas",
    "Norway", "Oman", "Pakistan", "Palau", "Panama", "Papua New Guinea", "Paraguay", "Peru",
    "Philippines", "Pitcairn Islands", "Poland", "Portugal", "Puerto Rico", "Qatar",
    "Reunion", "Romania", "Russia", "Rwanda", "Sqo Tome and Principe", "Saint Helena",
    "Saint Kitts and Nevis", "Saint Lucia", "Saint Pierre and Miquelon",
    "Saint Vincent and the Grenadines", "Samoa", "San Marino", "Saudi Arabia", "Senegal",
    "Seychelles", "Sierra Leone", "Singapore", "Slovakia", "Slovenia", "Solomon Islands",
    "Somalia", "South Africa", "South Georgia and the South Sandwich Islands", "South Korea",
    "Spain", "Sri Lanka", "Sudan", "Suriname", "Svalbard and Jan Mayen", "Swaziland", "Sweden",
    "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "The Bahamas",
    "The Gambia", "Togo", "Tokelau", "Tonga", "Trinidad and Tobago", "Tunisia", "Turkey",
    "Turkmenistan", "Turks and Caicos Islands", "Tuvalu", "Virgin Islands", "Uganda",
    "Ukraine", "United Arab Emirates", "United Kingdom",
    "United States", "United States Minor Outlying Islands", "Uruguay", "Uzbekistan",
    "Vanuatu", "Vatican City", "Venezuela", "Vietnam", "Wallis and Futuna", "Western Sahara",
    "Yemen", "Yugoslavia", "Zambia", "Zimbabwe"
  };


5、修改HelloListView.java的onCreate方法,内容如下:
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES));

  ListView lv = getListView();
  lv.setTextFilterEnabled(true);
  lv.setOnItemClickListener(new OnItemClickListener() {
    public void onItemClick(AdapterView<?> parent, View view,
        int position, long id) {
      // When clicked, show a toast with the TextView text
      Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
          Toast.LENGTH_SHORT).show();
    }
  });
}


6、运行项目,即可看到运行效果,如下图所示:





另,列表显示的内容也可通过XML配置的方式:
(1)修改res/values/strings.xml文件,修改后内容如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, HelloListView!</string>
    <string name="app_name">HelloListView</string>
    <string-array name="countries_array">
        //……(略)
        <item>Bahrain</item>
        <item>Bangladesh</item>
        <item>Barbados</item>
        <item>Belarus</item>
        <item>Belgium</item>
        <item>Belize</item>
        <item>Benin</item>
        //……(略)
    </string-array>
</resources>

(2)修改HelloListView.java的onCreate方法,内容如下:
// 原来代码
// setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES));
// 修改后的代码
String[] countries = getResources().getStringArray(R.array.countries_array);
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, countries));
  • 大小: 25.7 KB
分享到:
评论

相关推荐

    Android ListView组件的使用源代码

    这个"Android ListView组件的使用源代码"压缩包包含了一个名为"HelloListView"的示例项目,旨在帮助开发者理解并掌握ListView的用法。 首先,ListView的核心在于Adapter,它是数据和视图之间的桥梁。Adapter负责将...

    android的开发实例

    9. **HelloListView**: ListView是Android中最常用的视图,用于展示长列表。实例演示了如何创建ListView,包括自定义适配器、条目点击事件处理和列表项动画。 10. **HelloGoogleMaps**: Google Maps API的使用是...

    基于springboot的文物管理系统源码数据库文档.zip

    基于springboot的文物管理系统源码数据库文档.zip

    springboot329数计学院学生综合素质评价系统的设计与开发.zip

    论文描述:该论文研究了某一特定领域的问题,并提出了新的解决方案。论文首先对问题进行了详细的分析和理解,并对已有的研究成果进行了综述。然后,论文提出了一种全新的解决方案,包括算法、模型或方法。在整个研究过程中,论文使用了合适的实验设计和数据集,并进行了充分的实验验证。最后,论文对解决方案的性能进行了全面的评估和分析,并提出了进一步的研究方向。 源码内容描述:该源码实现了论文中提出的新的解决方案。源码中包含了算法、模型或方法的具体实现代码,以及相关的数据预处理、实验设计和性能评估代码。源码中还包括了合适的注释和文档,以方便其他研究者理解和使用。源码的实现应该具有可读性、可维护性和高效性,并能够复现论文中的实验结果。此外,源码还应该尽可能具有通用性,以便在其他类似问题上进行进一步的应用和扩展。

    基于SpringBoot+Vue的美容店信息管理系统源码数据库文档.zip

    基于SpringBoot+Vue的美容店信息管理系统源码数据库文档.zip

    IMG_9750.PNG

    IMG_9750.PNG

    javaweb项目 - 学生管理系统

    javaweb项目 - 学生管理系统

    前端铺子开发者 前端杂货铺 小程序在线课堂+工具组件小程序uniapp移动端.zip

    前端铺子开发者 前端杂货铺 小程序在线课堂+工具组件小程序uniapp移动端.zip

    毕业设计《SSM-HTML5酒店预订宾馆客房入住管理系统(可升级SpringBoot)》+Java项目源码+文档说明

    <项目介绍> - 前台技术框架: Bootstrap(一个HTML5响应式框架) 程序开发环境:myEclipse/Eclipse/Idea都可以 + mysql数据库 后台架构框架: SSM(SpringMVC + Spring + Mybatis) - 不懂运行,下载完可以私聊问,可远程教学 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

    (源码)基于PaddleDetection框架的人流量统计系统.zip

    # 基于PaddleDetection框架的人流量统计系统 ## 项目简介 本项目是一个基于PaddleDetection框架的人流量统计系统,专注于静态和动态场景下的人员计数和行人检测。项目涵盖了从数据准备、模型选择、训练、评估、优化到预测和部署的完整流程,旨在提供高效、准确的人流量统计解决方案。 ## 主要特性和功能 多模型支持支持多种模型选择,如DeepSORT、JDE和FairMOT,适用于多目标追踪场景。 模型优化提供多种优化策略,包括数据增强、可变形卷积、syncbn+ema、attention和GIoU Loss,以提升模型精度。 性能加速支持TensorRT推理加速,显著提升模型性能。 数据增强提供多种数据增强方式,如cutmix、syncbn和ema,进一步优化模型性能。 模型导出支持模型导出,便于模型部署和上线。 ## 安装使用步骤 1. 安装PaddleDetection框架 bash

    Cocos2d-x教程视频Cocos2d-x游戏实战项目开发记忆卡片

    Cocos2d-x教程视频Cocos2d-x游戏实战项目开发记忆卡片提取方式是百度网盘分享地址

    基于RNN生成文本(自然语言处理)

    此代码基于PTB数据集,实现了一个具有一定泛化能力的语言模型。可指定初始单词和生成单词数生成文本

    (源码)基于MQTT协议和Docker的IoT远程监控管理系统.zip

    # 基于MQTT协议和Docker的IoT远程监控管理系统 ## 项目简介 此项目旨在通过MQTT协议实现IoT设备的远程监控与管理,结合Docker技术实现服务器端的轻量化部署。通过Esp32微控制器连接IoT设备和MQTT服务器,实现数据的采集、传输和展示。 ## 项目的主要特性和功能 1. 自动化配置实现Esp32微控制器的自动化配置,通过WiFi连接MQTT服务器。 2. 图形化界面提供图形化界面,方便用户配置WiFi和MQTT服务器的连接凭证。 3. 远程固件更新支持远程固件更新,确保设备始终运行在最新状态。 4. Docker部署利用Docker技术,实现服务器端轻量化部署,方便管理和维护。 5. 实时数据传输通过MQTT协议实现数据的实时传输和展示,适用于多种IoT设备。 ## 安装使用步骤 1. 下载源码下载并解压项目源码文件。 2. 配置Docker环境根据项目需求,配置Docker环境,并启动相应的Docker容器。

    (源码)基于Qt框架的智能家居管理系统.zip

    # 基于Qt框架的智能家居管理系统 ## 项目简介 本项目是一个基于Qt框架开发的智能家居管理系统,旨在提供一个集成的平台来监控和管理家庭环境中的各种传感器数据,如温度、湿度、烟雾状态、红外状态等。系统通过图形界面实时展示数据,并提供警报功能以应对异常情况。 ## 项目的主要特性和功能 1. 实时数据监控通过Qt和Qwt库创建的曲线图,实时显示温度和湿度数据。 2. 多传感器支持支持温度、湿度、烟雾、红外等多种传感器的监控。 3. 警报系统当传感器数据超过设定阈值时,系统会触发警报,并通过界面显示警告信息。 4. 用户交互提供滑动条和复选框,允许用户调整警报阈值或关闭警报。 5. 网络通信通过TCP套接字与服务器通信,获取和发送传感器数据及网络拓扑信息。 6. 蓝牙数据读取支持通过蓝牙读取传感器数据并更新界面显示。 ## 安装使用步骤 1. 环境准备 确保已安装Qt开发环境。 安装Qwt库以支持曲线图功能。

    SpringBoot 整合 Druid 课件

    建立数据库连接池对象(服务器启动)。 按照事先指定的参数创建初始数量的数据库连接(即:空闲连接数)。 对于一个数据库访问请求,直接从连接池中得到一个连接。如果数据库连接池对象中没有空闲的连接,且连接数没有达到最大(即:最大活跃连接数),创建一个新的数据库连接。 存取数据库。 关闭数据库,释放所有数据库连接(此时的关闭数据库连接,并非真正关闭,而是将其放入空闲队列中。如实际空闲连接数大于初始空闲连接数则释放连接)。 释放数据库连接池对象(服务器停止、维护期间,释放数据库连接池对象,并释放所有连接)。

    (源码)基于物联网技术的远程医疗机器人系统.zip

    # 基于物联网技术的远程医疗机器人系统 ## 项目简介 本项目通过结合物联网技术和移动设备,实现了一个远程医疗机器人系统。通过远程控制和监测,医生可以在不同地点和环境中进行操作和观察,从而提高医疗服务效率和便利性。本系统的应用场景包括医院、手术室和病房等场景,旨在解决医生无法实时出现在患者身边的问题。 ## 项目的主要特性和功能 本项目的主要特性和功能包括 1. 远程控制医生可以通过BLYNK应用程序控制医疗机器人,实现在远程环境中的导航和操作。 2. 实时监控医疗机器人配备有摄像头和传感器,医生可以实时观察患者情况和手术室环境。 3. 温度监测医疗机器人内置温度传感器,可以测量患者的体温,无需直接接触患者。 4. 药品管理医疗机器人配备有药品箱,可以方便地进行药品的存储和管理。 ## 安装使用步骤 假设用户已经下载了本项目的源码文件,以下是安装使用步骤

    (源码)基于JavaFX的图片管理系统.zip

    # 基于JavaFX的图片管理系统 ## 项目简介 本项目是一个基于JavaFX的图片管理系统,旨在提供一个用户友好的界面来管理和浏览图片。系统支持图片的预览、重命名、删除、复制、粘贴等操作,并提供了多种排序和展示方式。 ## 项目的主要特性和功能 1. 预览窗口 目录树展示 缩略图预览 单选、多选(Ctrl+左键)、框选功能 图片信息显示(如文件名、大小、最后修改时间等) 2. 右键菜单 复制粘贴图片 单选和多选重命名 删除图片 3. 展示窗口 图片放大缩小 左右切换图片 幻灯片播放功能 4. 排序功能 按文件名排序 按文件大小排序 按最后修改时间排序 5. 其他功能 图片信息封装(ImageBean) 文件树节点管理(FileTreeItem)

    (源码)基于TensorFlow的中文文本分类系统.zip

    # 基于TensorFlow的中文文本分类系统 ## 项目简介 本项目是一个基于TensorFlow的中文文本分类系统,使用卷积神经网络(CNN)和循环神经网络(RNN)进行文本分类。项目涵盖了从数据预处理、模型训练、模型评估到模型预测的全流程,旨在提供一个高效的中文文本分类解决方案。 ## 主要特性和功能 数据预处理包括读取文件数据、构建词汇表、转换分类目录、将文本数据转换为ID序列表示等。 模型构建实现了基于CNN和RNN的文本分类模型,支持LSTM和GRU作为RNN的单元。 模型训练提供了详细的训练配置,包括学习率、批次大小、迭代轮次等参数的设置。 模型评估在验证集上评估模型的性能,输出准确率、损失等信息,并生成混淆矩阵。 模型预测加载训练好的模型,对新的文本消息进行分类预测,并输出预测类别。 ## 安装使用步骤 1. 环境准备 安装Python 23 安装TensorFlow 1.3以上

    Dbc Rules In MicroSAR AUTOSAR Development Tools

    Dbc Rules

    ES客户端Edge浏览器插件

    ES客户端浏览器插件 ElasticSearch-head插件平替 在原插件基础上修复了_bulk类型查询报错问题。 适用于Edge浏览器 解压后在浏览器插件管理中开启开发模式,通过加载解压的插件方式使用

Global site tag (gtag.js) - Google Analytics