Android中SimpleAdapter的使用—自定義列表

来源:http://www.cnblogs.com/shadada/archive/2017/05/25/6903637.html
-Advertisement-
Play Games

本人初學Android,今天研究到Adapter這塊感覺挺有意思的,寫了個自定義列表進行測試 首先我們新建一個layout列表佈局文件,具體佈局可以自己設定。 下麵貼上我的自定義佈局文件代碼 上面代碼的效果圖如下,整體用的是一個Image,以及兩個TextView 不好看就先湊合吧,測試用 接下來我 ...


本人初學Android,今天研究到Adapter這塊感覺挺有意思的,寫了個自定義列表進行測試

 

首先我們新建一個layout列表佈局文件,具體佈局可以自己設定。

下麵貼上我的自定義佈局文件代碼

 

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:orientation="horizontal"
 4     android:layout_width="match_parent"
 5     android:background="@drawable/list"
 6     android:layout_height="wrap_content">
 7 
 8     <ImageView
 9         android:id="@+id/ico"
10         android:layout_width="64dp"
11         android:layout_height="64dp"
12         android:background="@mipmap/ic_launcher"/>
13     <LinearLayout
14         android:layout_width="match_parent"
15         android:layout_height="wrap_content"
16         android:orientation="vertical">
17         <TextView
18             android:id="@+id/biaoti"
19             android:layout_width="match_parent"
20             android:layout_height="wrap_content"
21             android:text="我是標題"
22             android:layout_marginTop="5dp"
23             android:textSize="22sp"/>
24         <TextView
25             android:id="@+id/content"
26             android:layout_marginTop="5dp"
27             android:layout_width="match_parent"
28             android:layout_height="wrap_content"
29             android:textSize="16sp"
30             android:text="我是項目信息"/>
31     </LinearLayout>
32 </LinearLayout>

 

上面代碼的效果圖如下,整體用的是一個Image,以及兩個TextView

 

不好看就先湊合吧,測試用

接下來我們開始MainActivity.java

 1 package yuntu.com.yuntu;
 2 
 3 import android.support.v7.app.AppCompatActivity;
 4 import android.os.Bundle;
 5 import android.view.View;
 6 import android.widget.AdapterView;
 7 import android.widget.ListView;
 8 import android.widget.SimpleAdapter;
 9 import android.widget.TextView;
10 import android.widget.Toast;
11 import java.util.ArrayList;
12 import java.util.HashMap;
13 import java.util.List;
14 import java.util.Map;
15 
16 public class MainActivity extends AppCompatActivity {
17     private ListView listView;
18 //聲明標題
19     private String[] title = new String[]{
20             "我是第1個Title", "我是第2個Title", "我是第3個Title", "我是第4個Title"
21     };
22 //聲明內容
23     private String[] content = new String[]{
24             "我是第1個content", "我是第2個content", "我是第3個content", "我是第4個content"
25     };
26 //聲明圖標
27     private int[] imgIds = new int[]{R.mipmap.ic_launcher, R.mipmap.ic_launcher, R.mipmap.ic_launcher,R.mipmap.ic_launcher};
28     @Override
29     protected void onCreate(Bundle savedInstanceState) {
30         super.onCreate(savedInstanceState);
31         setContentView(R.layout.activity_main);
32         listView = (ListView) findViewById(R.id.list_item01);
33         List<Map<String, Object>> listitem = new ArrayList<Map<String, Object>>();
34         for (int i=0;i<content.length;i++){
35             Map<String, Object> map = new HashMap<String, Object>();
36             map.put("ico",imgIds[i]);
37             map.put("title",title[i]);
38             map.put("content",content[i]);
39             listitem.add(map);
40         }
41         SimpleAdapter simpleAdapter = new SimpleAdapter(this,listitem,R.layout.main_list,new String[]{"title","content","ico"},new int[]{R.id.biaoti,R.id.content,R.id.ico});
42         listView.setAdapter(simpleAdapter);
43 
44         listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
45             @Override
46             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
47                 TextView bt = (TextView) view.findViewById(R.id.biaoti);
48                 TextView nr = (TextView) view.findViewById(R.id.content);
49                 Toast.makeText(MainActivity.this, bt.getText() + "|" + nr.getText(), Toast.LENGTH_SHORT).show();
50             }
51         });
52     }
53 }      



//本篇文章記錄日常代碼,希望也可以幫到需要的人
                    ————鯊噠噠

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在也個html頁面中加入bootstrap是很方便,就是一般的將css和js文件通過Link和Script標簽就行。 那麼在一個用vue-vli生成的前端項目中如何加入?因為框架不一樣了,略微要適應一下。 腳手架生成項目 執行命令用webpack模板生成一個名為vuestrap的項目(名字任意) 在 ...
  • 六邊形 今天看到別人分享的六邊形學習 自己也試著做了一下 原理: 圖片旋轉 transfrom:rotate(120deg); 溢出隱藏 overflow:hidden; 我們要用三層div來實現旋轉效果 第一次 rotate(120deg) 第二次 rotate(-60deg) 第三次 rotat ...
  • ...
  • 作者寫的很有意思拿出來和大家分享 作者:Shadow鏈接:https://www.zhihu.com/question/19553117/answer/114306637來源:知乎著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。 你是否好奇標識瀏覽器身份的User-Agent,為 ...
  • 如下圖點擊Assers.xcassets,點擊下方的“+”,即可通過下麵方法增加launchimage 點擊launchimage,右邊出現方格 將圖片拖入方格中,Main Interface清空, Launch Images Source選擇Launchimage Launch Screen Fi ...
  • SoftReference可以用於bitmap緩存 WeakReference 可以用於handler ...
  • 支付寶插件 2016年11月的時候支付寶進行了一次更新,支付寶的SDK升級到2.0版本。以前在app中使用支付寶進行支付叫做移動支付,11月之後更名為APP支付。 1 根據支付寶的說明文檔的建議,為保證安全,簽名都放到後端去做,前端只需要接收後臺傳入簽名字元串,使用該插件調用支付寶SDK完成支付 2 ...
  • 最近想倒騰一個小小的 UIKit 到 JCenter,為開源社區貢獻一點綿薄之力,於是就有了一系列慘無人道的踩坑史。好,接下來,直奔主題,以下是發佈流程。 發佈到 JCenter 發佈到 JCenter 需要以下幾個步驟。 註冊 Bintray 賬號並創建倉庫 Bintray 是 JCenter 庫 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...