Xamarin学习笔记 -ListVew

1,ListView:纵向列表

2,需要数据适配器呈现


ArrayAdapter<T>


用来绑定一个数组,支持泛型操作


SimpleAdapter


用来绑定在axmll中定义的控件对应的数据,

单独item的axmll布局可以实现自定义的样式效果,数据内容的绑定


SimpleCursorAdapter


用来绑定游标得到的数据


BaseAdapter


通用的基础适配器

3,SimpleAdapter 适配器

    public class AppDataViewModel:MvxViewModel
    {

        public Dictionary<string, object> Channel = new Dictionary<string, object>();
        public string test { get; set; } = "我是个测试";
        public override void Start()
        {
            base.Start();

        }
        public AppDataViewModel()
        {
            Channel.Add("1号菜单", "");
            Channel.Add("2号菜单", "");
            Channel.Add("3号菜单", "");
        }

    }
            AppDataViewModel avm = new AppDataViewModel();
            var list1 = new List<IDictionary<string, object>>();

            foreach(var c  in avm.Channel)
            {
                JavaDictionary<string, object> jd = new JavaDictionary<string, object>();  //注意这里需要的是JavaDictionary
                jd.Add("txt", c.Key); //字段key         //jd.Add("xx",xx)
                list1.Add(jd);
             }

            sa = new SimpleAdapter(this,
                list1,
                Resource.Layout.main_menuItem, //item的样式布局文件
                new string[] { "txt" }, //对应的字段key
                new int[] { Resource.Id.main_menuItem_id }); //item样式布局文件中需要绑定的元素id,将会对应到数据的字段key
            var menu = (ListView)FindViewById(Resource.Id.menu);
            menu.Adapter = sa;

layout/main_menuItem.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="100dip">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#FFFFFFFF"
        android:layout_weight="1.0"
        android:gravity="center"
        android:textSize="22px"
        android:id="@+id/main_menuItem_id" />
</LinearLayout>

时间: 2024-08-08 12:18:35

Xamarin学习笔记 -ListVew的相关文章

xamarin 学习笔记02- IOS Simulator for windows 安装

微软发布了在window下的ios模拟器 下载和安装 下载 ios模拟器 并安装在windows系统上. Xamarin for Visual Studio 和 网络上的 Mac 中的 Xamarin.iOS 开发环境需要将xamarin的环境改为beta频道的发布版本 启用连接 iOS Simulator: 在使用ios模拟器之前将vs 连接到mac上 进入Tools > Options > Xamarin > iOS Settings ,勾选上 Remote Simulator to

Xamarin学习笔记 - MvvmCross 实现

1,PCL中安装MvvmCross 2,在PCL建立ViewModel模型,继承于MvxViewModel 3,在PCL的App.cs中注册 如果有Iservice的注册 Mvx.RegisterType<ICalculation, Calculation>(); 注册模型 Mvx.RegisterSingleton<IMvxAppStart>(new MvxAppStart<AppDataViewModel>()); 4,在Droid(android)项目中安装Mvv

张高兴的 Xamarin.Android 学习笔记:(一)环境配置

最近在自学 Xamarin 和 Android ,同时发现国内在做 Xamarin 的不多.我在自学中间遇到了很多问题,而且百度到的很多教程也有些过时,现在打算写点东西稍微总结下,顺便帮后人指指路了.由于手头没啥中文资料,我也是自己摸索出来的,而且我对 Android 也只是处于最开始的了解阶段(学习笔记嘛,别学边写嘛╮(╯▽╰)╭),难免会出现错误,有问题大家共同讨论(毕竟 .Net 就要靠我们腾达了). 以 Visual Studio 2015 Community 为例. 1. 安装 Xam

【C#学习笔记】No.001 初识.NET Framework

关于贵客访问<C#学习笔记>的温馨提示: 本笔记用于个人学习C#技术的知识点.实例练习记录与心得记录 鄙人愿意和喜欢相关技术或者正打算学习C#的朋友进行交流学习 由于是个人是初次学习且该记录为学习笔记,所以难免会有错误或者不清晰的地方,这些地方会在后面的学习中不断改正和改善 对于已经出现的错误,也希望来到博客的人能指出并提示我或指导我,在此感谢大家了 对于决定共同学习的朋友(零基础),请看一下以下提示: 初学者不要过于钻牛角尖,鄙人的学习笔记都是从最基础的开始做的,有理论也有实例 每篇开头会有

Android学习笔记(二十):回归简单的ListView

在之前连续对ListVew作了逐步深入的探讨,对于手持屏幕来讲,其实可以比较简单,如果别人愿意付钱,不在乎将代码再些一次,这是客户端的开发和复杂服务器的开发不同的地方.当然各人有各人的看法.绝大部分情况下,一个list元素可能左右各有一个widget就差不多,回归简约风格,这也是小尺寸屏幕和手指操作的特点. 在数据的传递,Java里面,具有<Key,Value>的Hash是非常重要的,可以方便增/删/改/查,如果我们不使用数据库存储,或者将数据存放在内存中,<Key,Value>是

vector 学习笔记

vector 使用练习: /**************************************** * File Name: vector.cpp * Author: sky0917 * Created Time: 2014年04月27日 11:07:33 ****************************************/ #include <iostream> #include <vector> using namespace std; int main

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则 用了几天时间看了一下开源框架Caliburn.Micro 这是他源码的地址http://caliburnmicro.codeplex.com/ 文档也写的很详细,自己在看它的文档和代码时写了一些demo和笔记,还有它实现的原理记录一下 学习Caliburn.Micro要有MEF和MVVM的基础 先说一下他的命名规则和引导类 以后我会把Caliburn.Micro的 Actions IResult,IHandle ICondu

jQuery学习笔记(一):入门

jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操作如下: 1 document.getElementById('info').value = 'Hello World!'; 使用JQuery时获取DOM文本操作如下: 1 $('#info').val('Hello World!'); 嗯,可以看出,使用JQuery的优势之一是可以使代码更加简练,使开

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------