主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

Similar documents
多媒體應用 13 新增專案並完成版面配置 <ExMusic01> <activity_main.xml> ImageView ID imgplay ImageView ID imgstop ImageView ID imgfront TextView ID txtsong TextView ID t

RecyclerView and CardVew

预览图 : (2) 在 SelectCity.java 中增加控件, 用于绑定 select_city 文件的 ListView, TextView,EditTest 等控件 代码和注释如下 :

Android Fragment

Dynamic Layout in Android

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

Android + WebService

图 6-1 主界面 MainActivity 界面对应的布局文件 (activity_main.xml) 如下所示 : <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="

Android Service

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

Android + NFC

Microsoft Word - AEL CH05.doc

内文-2.indd

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

Microsoft Word - weather12 刷新按钮动画+搜索框+bug处理.docx

「西醫基層總額支付委員會《第28次委員會議紀錄

Microsoft Word - 第3章.doc

<android.support.v7.widget.recyclerview android:layout_width="0dp" android:layout_height="0dp" android:layout_marginbottom

用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應

0511-Android程式之GPS應用_專題週記4

Microsoft Word - 第4章 3D相册.doc

幻灯片 1

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

1.5招募说明书(草案)

建模与图形思考

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

建立Android新專案

untitled

Android 编程基础 Android 开发教程 & 笔记 1

建模与图形思考

第 5 章 Android 控件进阶操作实战 ArrayAdapter 适配器 ListView 的数据渲染都需要借助适配器来完成, 首先看一下结合最简单的 ArrayAdapter 来实现 ListView 主布局文件 (activity_main.xml) 代码如下 : <?

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

Strings

實作SQLiteOpenHelper類別

Microsoft Word - 01.DOC

Lecture01_Android介绍

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

Android Android Android SDK iv

PowerPoint 簡報

EJB-Programming-4-cn.doc

第一章

任务实施 (1) 创建项目 图 3-1 欢迎界面 首先创建一个工程, 将其命名为 BoXueGu, 指定包名为 com.boxuegu (2) 导入界面图片将欢迎界面所需要的背景图片 launch_bg.png 导入到 drawable 文件夹中, 项目的 icon 图标 app_icon.png

開發工具下載與安裝

EJB-Programming-3.PDF

Lecture01_Android介绍

Microsoft Word - Hibernate与Struts2和Spring组合指导.doc

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

单击以编辑母片 Content 标题样式 LinearLayout 排版模式 TableLayout 排版模式 RelativeLayout 排版模式 AbsoluteLayout 排版模式 FrameLayout 排版模式 GridLayout 排版模式 TabWidget 切換卡 Lab 5 2

untitled

_banneradview.setuserkeywords("swimming"); _banneradview.setusercategories("1,3,4"); _banneradview.setusergender(jdbanneradview.gender_male); _bannera

Microsoft Word - ch04三校.doc

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Microsoft PowerPoint - L17_Inheritance_v4.pptx

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

基于ECO的UML模型驱动的数据库应用开发1.doc

Microsoft PowerPoint - 03 开发入门.ppt [兼容模式]

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

Microsoft Word - 第3章.doc

untitled

Chapter 10


1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

untitled

Android 开发教程

Android 开发教程

JavaIO.PDF

untitled

第三章 中原儺文化圈

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

Microsoft Word - 第5章.doc

Microsoft Word - 02.目錄.doc

untitled

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f

FireBase資料庫

<ADB6ADB1C25EA8FAA6DB2D4D56432E706466>

untitled

03 开发入门.key

Chapter 9: Objects and Classes

1. 2. Flex Adobe 3.

桃園縣秀才實驗學校多元適性發展的課程規畫

Microsoft Word - 第3章.doc

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

untitled

untitled

IoC容器和Dependency Injection模式.doc

untitled

第一章 Android 简介与开发环境搭建

说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架

untitled

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

untitled

移动平台期末展示

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

《大话设计模式》第一章

untitled

投影片 1

untitled

Transcription:

ListView 自訂排版

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new int[]{r.drawable.dog1, R.drawable.dog2, R.drawable.dog3, R.drawable.dog4, R.drawable.dog5, R.drawable.dog6, R.drawable.dog7, R.drawable.dog8, R.drawable.dog9,R.drawable.dog10,

R.drawable.dog11, R.drawable.dog12, R.drawable.dog13, R.drawable.dog14, R.drawable.dog15, R.drawable.dog16, R.drawable.dog17, R.drawable.dog18, R.drawable.dog19, R.drawable.dog20; // 狗狗名字 String[] name = new String[]{" 杜賓狗 ","BBB","CCC","AAA","BBB","CCC","AAA","BBB","CCC","AAA","BBB","AAA","BBB", "CCC","AAA","BBB","CCC","AAA","BBB","CCC","AAA","BBB"; // 狗狗生日 String[] birthday = new String[]{"2011/2/1","2009/4/5","2005/8/9","2011/2/1","2009/4/5","2005/8/9"," 2011/2/1","2009/4/5","2005/8/9", "2011/2/1","2009/4/5","2005/8/9","2011/2/1","2009/4/5","2005/8/9","2009/4/5","2005/8/9","2011/2/1","2009/4/5","2005/8/9"; @Override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main3); listview = (ListView) findviewbyid(r.id.listview); // 將資料存入 ArrayList 的物件中, 每筆有三個 HashMap 物件 ( 即 : 圖片 名字 生日 ) ArrayList<HashMap<String,Object>> list= new ArrayList<>(); HashMap<String,Object > hashmap ; for(int i=0;i<pic.length;i++) { hashmap = new HashMap<>(); hashmap.put("pic",pic[i]); hashmap.put("name",name[i]); hashmap.put("birthday",birthday[i]); list.add(hashmap);

// 將資料來源給 SimpleAdapter, 參數分別為 Context, 自訂顯示的排版 HashMap 的 Key 對應要顯示在排版上的原件名稱 SimpleAdapter adapter= new SimpleAdapter(this,list,R.layout.listitem,new String[]{"pic","name","birthday",new int[]{r.id.itemimageview,r.id.itemtext1,r.id.itemtext2 ); listview.setadapter(adapter); listview.setonitemclicklistener(new ListView.OnItemClickListener() { @Override public void onitemclick(adapterview<?> parent, View view, int position, long id) { Log.d(" 狗狗 : ", String.valueOf(position)); TextView t1 =(TextView) view.findviewbyid(r.id.itemtext1); TextView t2 =(TextView) view.findviewbyid(r.id.itemtext2); ImageView img = (ImageView) view.findviewbyid(r.id.itemimageview); t1.settext(" 抓到你 "); t2.settext(" 跑不掉啦!"); img.setimageresource(r.drawable.dog11); ); listview.setonitemlongclicklistener(new ListView.OnItemLongClickListener() { @Override public boolean onitemlongclick(adapterview<?> parent, View view, int position, long id) { Log.d(" 狗狗 : ", " 還原狗狗資料 "); TextView t1 =(TextView) view.findviewbyid(r.id.itemtext1); TextView t2 =(TextView) view.findviewbyid(r.id.itemtext2);

ImageView img = (ImageView) view.findviewbyid(r.id.itemimageview); // 回復原有資料 t1.settext(name[position]); t2.settext(birthday[position]); img.setimageresource(pic[position]); return true; ); ---------------- 主程式的排版, 裡面只安排一個 ListView 元件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_height="match_parent" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" tools:context="com.example.stust.demo2016.main3activity" android:orientation="vertical"> <ListView android:layout_height="wrap_content" android:id="@+id/listview" /> </LinearLayout> --------------- ListView 子項目的自訂排版 listitem.xml, 可以顯示一張圖片, 兩筆文字 <?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent" android:orientation="horizontal"> <ImageView android:layout_width="120dp" android:layout_height="100dp" android:id="@+id/itemimageview" android:src="@drawable/dog1" /> <LinearLayout android:orientation="vertical" android:layout_height="match_parent"> <TextView android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large Text" android:id="@+id/itemtext1" android:background="#adf2fc" android:textsize="32dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large Text" android:id="@+id/itemtext2" /> </LinearLayout> </LinearLayout>