[Activity(Label = "MainGridViewActivity", LaunchMode = LaunchMode.SingleTop)]//设置Activity启动模式
public class MainGridViewActivity : Activity
{
private GridView gview;
JavaList<IDictionary<string, object>> data_list = null;//一定要用javalist不能用IList
IDictionary<string, object> Map = null;
private SimpleAdapter adapter;
// 图片封装为一个数组
private int[] icon = { Resource.Drawable.Icon_agree , Resource.Drawable.icon_graphic,
Resource.Drawable.icon_roll,Resource.Drawable.Icon_semifin, Resource.Drawable.Icon_bg};
private string[] iconName = { "审批", "报表", "成品","半成品", "报工" };
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.MainGridView_layout);

gview = FindViewById<GridView>(Resource.Id.gridView1);
//新建List
data_list = new JavaList<IDictionary<string, object>>();//一定要用javalist不能用List
//获取数据
getData();
//新建适配器
string[] from = { "image", "text" };
int[] to = { Resource.Id.imagegViewMain, Resource.Id.textgViewMain };
adapter = new SimpleAdapter(this, data_list, Resource.Layout.gViewMainItem, from, to);
//配置适配器
gview.Adapter = adapter;

//GridView 的itemclick
gview.ItemClick += gview_ItemClick;//给GridView单元格加点击事件,类似java开发中的监听。
}
private JavaList<IDictionary<string, object>> getData()
{
//cion和iconName的长度是相同的,这里任选其一都可以
for (int i = 0; i < icon.Length; i++)
{
Map = new JavaDictionary<string, object>();
Map.Add("image", icon[i]);
Map.Add("text", iconName[i]);
data_list.Add(Map);
}
return data_list;
}
private void gview_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
{
switch (e.Position)
{
case 0://审批请求
{
var intent = new Intent(this, typeof(ApprovalActivity));
StartActivity(intent);
}
break;
case 1:
{
var intent = new Intent(this, typeof(GraphicMain));
StartActivity(intent);
}
break;
case 2:
{
var intent = new Intent(this, typeof(FinishGoodList));
StartActivity(intent);
}
break;
case 3:
{
var intent = new Intent(this, typeof(SemiFinishedGoodsList));
StartActivity(intent);
}
break;
case 4:
{
var intent = new Intent(this, typeof(SubMachineActivity));
StartActivity(intent);
}
break;
default:
new AlertDialog.Builder(this)
.SetMessage("该功能还在开发中...")
.Show();
break;
}
}
}

Xamarin控件使用之GridView的更多相关文章

  1. 与众不同 windows phone (52) - 8.1 新增控件: AutoSuggestBox, ListView, GridView, SemanticZoom

    [源码下载] 与众不同 windows phone (52) - 8.1 新增控件: AutoSuggestBox, ListView, GridView, SemanticZoom 作者:webab ...

  2. 带农历日历的DatePicker控件!Xamarin控件开发小记

    原文:带农历日历的DatePicker控件!Xamarin控件开发小记 闲来无事开发了个日期选择控件,感兴趣的同学前往: https://github.com/MatoApps/Mato.DatePi ...

  3. DevExpress控件使用经验总结- GridView列表行号显示操作

    DevExpress是一个比较有名的界面控件套件,提供了一系列的界面控件套件的DotNet界面控件.本文主要介绍我在使用DevExpress控件过程中,遇到或者发现的一些问题解决方案,或者也可以所示一 ...

  4. Android--自定义控件---自动分页的GridView

    最近,根据项目需求,需要一个能够自动分页的导航,所以便自定义了一个自动分页的GridView. 思路:继承RelativeLayout,然后在里面放了一个viewpager和一个GridView... ...

  5. Developer Express控件gridcontrol中gridView的某一个单元格是否可以自由输入

    场景:在Developer Express控件gridcontrol中的gridView中,当医生开的临时医嘱的医嘱类型为"中草药","计价总量"单元格不可以自 ...

  6. 主表当中明细表字段的金额计算问题,操作控件是在gridview+aspnetPage

    做这个例子,主要是我在工作当中遇到一个主表的明细表的操作计算问题,也用了不少时间.操作计算的方式是这样的. 这个功能是在.net语言当中实现,操作过程当点击添加行,添加第一行时,当我输入金额的时候,累 ...

  7. RecyclerView 加入一个滑动控件bug处理 GridView只显示第一行

    如果RecyclerView 多样式布局,比如要加入一个展示多个图看的需求.自然想到用gridview给嵌套一下. 想法当然是可以的,但是发现,嵌套出来的效果是,gridview只显示一行. 想想原因 ...

  8. Xamarin控件使用之ListView

    listview单列多行的显示,以后再加多列多行的实例. [Activity(Label = "GraphicAll", LaunchMode = LaunchMode.Singl ...

  9. 扩展GridView控件——为内容项添加拖放及分组功能

    引言 相信大家对GridView都不陌生,是非常有用的控件,用于平铺有序的显示多个内容项.打开任何WinRT应用或者是微软合作商的网站,都会在APP中发现GridView的使用.“Tiles”提供了一 ...

随机推荐

  1. 短路运算|字符串操作函数|内存mem操作函数

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  2. python基本数据类型——list

    一.创建列表: li = [] li = list() name_list = ['alex', 'seven', 'eric'] name_list = list(['alex', 'seven', ...

  3. 消息队列NetMQ 原理分析3-命令产生/处理和回收线程

    消息队列NetMQ 原理分析3-命令产生/处理和回收线程 前言 介绍 目的 命令 命令结构 命令产生 命令处理 创建Socket(SocketBase) 创建连接 创建绑定 回收线程 释放Socket ...

  4. Oracle12c多租户管理用户、角色、权限

    Oracle 数据库 12 c 多租户选项允许单个容器数据库 (CDB) 来承载多个单独的可插拔数据库 (PDB).那么我们如何在容器数据库 (CDB) 和可插拔数据库 (PDB)管理用户权限.背景: ...

  5. Docker - 访问仓库

    仓库与注册服务器 仓库(Repository)集中存放镜像的项目或目录. 注册服务器(Registry)管理仓库的服务器,服务器上可以有多个仓库,每个仓库有多个镜像. 例如:在仓库地址docker.i ...

  6. Excel 数据导入(OleDb)

    @using (Html.BeginForm("Student", "Excel", FormMethod.Post, new { enctype = &quo ...

  7. Brief introduction to Cassandra 【Cassandra简介】

    From wikipedia  https://en.wikipedia.org/wiki/CAP_theorem In theoretical computer science, the CAP t ...

  8. java之 Timer 类的使用以及深入理解

    最近一直在看线程知识,然后看到Timer定时器使用了线程实现的定时功能,于是了解了解: 本文 从Time类的使用和源码分析两个方面讲解: 1---Timer类使用 2---源码分析 1.Time类使用 ...

  9. php.ini 文件中配置的意义注释

    ;;;;;;;;;;;;;;;;;;;; About php.ini   ;  //关于php;;;;;;;;;;;;;;;;;;;; PHP's initialization file, gener ...

  10. PHP中的运算符

    一.算术运算符   运算符 名称 描述 实例 结果 x + y 加 x 和 y 的和 2 + 2 4 x - y 减 x 和 y 的差 5 - 2 3 x * y 乘 x 和 y 的积 5 * 2 1 ...