这是客户端开发部分很重要的一个类,但是在开发之前需要用到有关GridView的知识。

若要临时充充电,请移步:GridView(九宫图)的使用介绍。

下面是AppList类的代码:

/* * 用来显示、管理自己的微博账号,包括新浪微博账号,腾讯微博账号等 * 为了更好地阅读本代码,需要向你介绍的是:AppList类使用两个xml文件。、 * 一个是sina_applist.xml;一个是sina_applist_component.xml * sina_applist.xml是一个gridView布局文件 * sina_applist_component.xml是上个文件中GridView组件中的两个组件,用来实现显示图像的功能 */ package tianyi.sina; import java.util.ArrayList; import java.util.HashMap; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.GridView; import android.widget.ImageView; import android.widget.SimpleAdapter; public class AppList extends Activity { GridView gridView; ImageView qqa; ImageView sinaa; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // 调用gridView布局,表现效果是以九宫格的形式显示App的图标 setContentView(R.layout.sina_applist); gridView = (GridView) findViewById(R.id.sina_applist_gridview); // 生成动态数组,并且转入数据 ArrayList<HashMap<String, Object>> lstImageItem = new ArrayList<HashMap<String, Object>>(); // 向map中添加图片 for (int i = 0; i < 7; i++) { HashMap<String, Object> map = new HashMap<String, Object>(); if (i == 0) { map.put("itemImage", R.drawable.sina); map.put("itemText", "新浪微博"); } if (i == 1) { map.put("itemImage", R.drawable.tencent); map.put("itemText", "腾讯微博"); } if (i == 2) { map.put("itemImage", R.drawable.twitter); map.put("itemText", "twitter"); } if (i == 3) { map.put("itemImage", R.drawable.net); map.put("itemText", "网易"); } if (i == 4) { map.put("itemImage", R.drawable.tt); map.put("itemText", "天涯"); } if (i == 5) { map.put("itemImage", R.drawable.dou); map.put("itemText", "豆瓣"); } if (i == 6) { map.put("itemImage", R.drawable.renren); map.put("itemText", "人人网"); } lstImageItem.add(map); } // 生成适配器的ImageItem <====> 动态数组的元素,两者一一对应 SimpleAdapter saImageItems = new SimpleAdapter(this, // 没什么解释 lstImageItem,// 数据来源 R.layout.sina_applist_component, new String[] { "itemImage", "itemText" }, new int[] { R.id.sina_applist_componet_ItemImage, R.id.sina_applist_componet_ItemText }); // 添加并且显示 gridView.setAdapter(saImageItems); // 添加消息处理 gridView.setOnItemClickListener(new ItemClickListener()); } // 当AdapterView被单击(触摸屏或者键盘),则返回的Item单击事件 class ItemClickListener implements OnItemClickListener { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub } } }

AppList界面的效果图以及开发中要使用到的图标:

完成了这两部界面的开发工作,现在我们就正式进入了学习微博SDK中新的接口、新的类及各种参数的阶段。这个阶段也就是大家最感兴趣的Oauth开发阶段。其实并不像你想象中的那样难,只不过是大家重新学习一下新的类和接口而已,你能学会java中那么多类和接口的用法,这些同样不在话下。

在下一篇文章中,是关于一个Oauth工具类(OauthUtils类)的内容,这个类为今后将要使用到的Oauth类和其他类提供了要调用的方法和参数。

新浪微博开发(五)AppList界面相关推荐

  1. Html5 Egret游戏开发 成语大挑战(五)界面切换和数据处理

    Html5 Egret游戏开发 成语大挑战(五)界面切换和数据处理 经过前面的制作,使用Egret的Wing很快完成了开始界面和选关卡界面,下面通常来说就是游戏界面,但此时界面切换和关卡数据还没有准备 ...

  2. 【Visual C++】游戏开发五十七 浅墨DirectX教程二十四 打造游戏GUI界面(二)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/16922703 作者:毛星 ...

  3. 浅谈iOS 开发中的界面通信

    在任何的软件开发中都离不开界面与界面之间的通信,界面通信的最直接的方法就是界面传值. 在开发过程中我们在页面传值时我们通常使用的方法有:属性传值法,block传值法,代理传值法,以及单例传值法,通知传 ...

  4. 企业微信三方开发(五):扫码登录

    其他链接 初识微信开发 企业微信三方开发:注册企业微信服务商 企业微信三方开发(一):回调验证及重要参数获取 企业微信三方开发(二):获取access_token 企业微信三方开发(三):网页授权登录 ...

  5. 第二章,人脸识别与管理系统界面开发(WinForm界面增强,OpenCV-Python智能识别)

     摘要:通过人脸识别与管理系统界面的开发(WinForm界面增强,OpenCV-Python智能识别),我将以一个用户登录窗体的两种不同登录验证方式向各位同学介绍如何利用WinForm开发出漂亮的应用 ...

  6. Android软件开发之盘点界面五大布局(十六)

    Android软件开发之盘点界面五大布局 雨松MOMO原创文章如转载,请注明:转载至我的独立域名博客雨松MOMO程序研究院,原文地址:http://www.xuanyusong.com/archive ...

  7. 移动WEB开发五、响应式布局

    零.文章目录 文章地址 个人博客-CSDN地址:https://blog.csdn.net/liyou123456789 个人博客-GiteePages:https://bluecusliyou.gi ...

  8. 使用Silverlight for Embedded开发绚丽的界面(4)

    在文章使用Silverlight for Embedded开发绚丽的界面(2)我介绍了如何通过subproject的方式开发SE应用程序,并在文章使用Silverlight for Embedded开 ...

  9. 使用Silverlight for Embedded开发绚丽的界面(3)

    上一篇文章在这里:使用Silverlight for Embedded开发绚丽的界面(2) 上一篇文章是介绍通过subproject的方式来开发SE应用程序,开发起来太麻烦.这篇文章我提供Alchem ...

最新文章

  1. linux crontab 说明
  2. python基础-资料整理_已迁移
  3. @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction
  4. 我是如何学习写一个操作系统(完结):总结和系列索引
  5. 同前端联调过程中遇到的坑
  6. python自动化测试报告 之 allure_Pytest+ Allure + Jenkins 自动化测试报告
  7. 除了敲代码,程序员还需要哪些必备技能?
  8. MySQL 的CASE WHEN 语句使用说明
  9. vue中遇到的问题:Error: Cannot find module 'chalk'
  10. 普通用户登录PLSQL后提示空白OK对话框错误
  11. python九九乘法表代码及循环过程详解
  12. MacOS Mojave 安装 AI 東北きりたん 东北切蒲英 NEUTRINO 教程
  13. php 图片 变灰色,php实现给图片加灰色半透明效果的方法_PHP
  14. 纳米机器人最新研究进展(2021年)
  15. 眼控电脑专用眼镜亮相
  16. BERT-QE:用于文档Rerank的上下文化查询扩展模型
  17. 二层基本知识点(一)
  18. 制作mac os x lion启动盘
  19. 网页抓取及信息提取(一)
  20. STM32定时器配置(TIM1、TIM2、TIM3、TIM4、TIM5、TIM8)高级定时器+普通定时器,定时计数模式下总结

热门文章

  1. ergonomic计算机专业英语,[听单词] 计算机专业英语词汇音频52,计算机英语单词MP3...
  2. 阿里云拨测:主动探测Web应用质量,助力提升用户体验
  3. Activiti使用教程
  4. JavaScript 原型链总结(一)
  5. 非阻塞recvfrom卡住
  6. 微信开放平台--》网站应用开发 微信登录网站接口(https://open.weixin.qq.com/)
  7. PacketTracer Physical view wireless single problem
  8. linux lsiutil raid创建,使用Lsiutil管理Dell SAS 6i/R
  9. JSON.stringify() 详解
  10. ZeroClipboard2跨浏览器复制粘贴