慕课网/安卓攻城狮视频学习及练习(六)

manifest

A跳转B,在B的文件中用permission权限,然后A就无权跳转到B,如果在A中用uses-permission把权限给了A,那么A就可以跳转到B了.可以通俗的说,permission给B了一把锁,A要进门,就要用uses-permission得到一把钥匙.

onitemclicklister+onscrolllistner

 1 public class FActivity extends Activity implements OnItemClickListener,OnScrollListener{
 2     private ListView lv;
 3     private SimpleAdapter sim_adapter;
 4     private List<Map<String, Object>> datalist;
 5     @Override
 6 protected void onCreate(Bundle savedInstanceState) {
 7     // TODO Auto-generated method stub
 8     super.onCreate(savedInstanceState);
 9     setContentView(R.layout.factivity);
10
11     lv=(ListView) findViewById(R.id.listView1);
12     sim_adapter =new SimpleAdapter(this, getdata(), R.layout.item, new String[]{"pic","text"}, new int[]{R.id.imageView1,R.id.textView1});
13
14     lv.setAdapter(sim_adapter);
15     lv.setOnItemClickListener(this);
16     lv.setOnScrollListener(this);
17
18 }
19 private List<Map<String, Object>> getdata(){
20     datalist =new ArrayList<Map<String,Object>>();
21     for (int i=0;i<10;i++)
22     {
23     Map<String, Object> map = new HashMap<String, Object>();
24     map.put("pic", R.drawable.ic_launcher);
25     map.put("text", "慕课网"+i);
26     datalist.add(map);
27     }
28   return datalist;
29 }
30 @Override
31 public void onScrollStateChanged(AbsListView view, int scrollState) {
32     switch (scrollState) {
33     case SCROLL_STATE_FLING:
34         Map<String, Object> map =new HashMap<String, Object>();
35         map.put("pic", R.drawable.ic_launcher);
36         map.put("text", "增加item");
37         datalist.add(map);
38         sim_adapter.notifyDataSetChanged();
39         break;
40     case SCROLL_STATE_IDLE:
41
42         break;
43     case SCROLL_STATE_TOUCH_SCROLL:
44
45         break;
46
47     default:
48         break;
49     }
50
51 }
52 @Override
53 public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
54     // TODO 自动生成的方法存根
55
56 }
57
58 @Override
59 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
60     String text=lv.getItemAtPosition(position)+"";
61     Toast.makeText(this, "位置:"+position+"text="+text, Toast.LENGTH_SHORT)
62     .show();
63
64 }
65 }

**Picker:选择器
DatePicker日历选择器
Timepicker时间选择器**

 1 public class FActivity extends Activity {
 2     private TimePicker tp;
 3     private DatePicker dp;
 4     private Calendar cal;
 5     int year;
 6     int month;
 7     int day;
 8     int hour;
 9     int minute;
10
11     @Override
12 protected void onCreate(Bundle savedInstanceState) {
13     // TODO Auto-generated method stub
14     super.onCreate(savedInstanceState);
15     setContentView(R.layout.factivity);
16
17     cal=Calendar.getInstance();//生成日历类的对象实例
18     year=cal.get(Calendar.YEAR);
19     month=cal.get(Calendar.MONTH)+1;//注意唯一例外是month需要+1
20     day=cal.get(Calendar.DAY_OF_MONTH);
21     hour=cal.get(Calendar.HOUR_OF_DAY);
22     minute=cal.get(Calendar.MINUTE);
23     setTitle(year+"-"+month+"-"+day+" "+hour+":"+minute);
24
25     tp=(TimePicker) findViewById(R.id.timePicker1);
26     dp=(DatePicker) findViewById(R.id.datePicker1);
27     dp.init(year, Calendar.MONTH, day, new OnDateChangedListener() {
28
29         @Override
30         public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
31             setTitle(year+"-"+(monthOfYear+1)+"-"+dayOfMonth+" "+hour+":"+minute);
32
33
34         }
35     });
36     tp.setOnTimeChangedListener(new OnTimeChangedListener() {
37
38         @Override
39         public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
40
41             setTitle(year+"-"+month+"-"+day+" "+hourOfDay+":"+minute);
42         }
43     });
44 }
45
46
47 }

注意month的加减一问题。
datepicker需要用init()方法,在方法中调用监听器,而时间选择器直接调用监听器。

dialog形式

匿名内部类实现。

 1 //参数callback是监听器
 2     new DatePickerDialog(this, new OnDateSetListener() {
 3
 4         @Override
 5         public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
 6             setTitle(year+"-"+(monthOfYear+1)+"-"+dayOfMonth+" "+hour+":"+minute);
 7
 8         }
 9     }, year, cal.get(Calendar.MONTH), day).show();
10
11     new  TimePickerDialog(this, new OnTimeSetListener() {
12
13         @Override
14         public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
15             setTitle(year+"-"+month+"-"+day+" "+hourOfDay+":"+minute);
16
17         }
18     }, hour, minute, true);
19 }

gridview

 1 public class FActivity extends Activity implements OnItemClickListener{
 2     private GridView gv;
 3     private SimpleAdapter sim_adapter;
 4     private List<Map<String, Object>> datalist;
 5     int[] iconid={R.drawable.calculate,R.drawable.calendar,R.drawable.clock,
 6             R.drawable.contact,R.drawable.message,R.drawable.money,R.drawable.notebook,
 7             R.drawable.rest,R.drawable.setting,R.drawable.studyhat,R.drawable.trashbox,
 8             R.drawable.weightscale};
 9     String[] iconname={"calculate","calendar","clock","contact","message","money",
10             "notebook","rest","setting","studyhat","trashbox","weightscale"};
11     @Override
12 protected void onCreate(Bundle savedInstanceState) {
13     // TODO Auto-generated method stub
14     super.onCreate(savedInstanceState);
15     setContentView(R.layout.factivity);
16
17
18 datalist=new ArrayList<Map<String,Object>>();
19
20     gv=(GridView) findViewById(R.id.gridView1);
21     sim_adapter=new SimpleAdapter(this, getdata(), R.layout.item, new String[]{"pic","text"}, new int[]{R.id.imageView1,R.id.textView1});
22     gv.setAdapter(sim_adapter);
23
24     gv.setOnItemClickListener(this);
25 }
26
27 private List<Map<String, Object>> getdata() {
28
29         for (int i=0;i<iconid.length;i++){
30             Map<String, Object> map=new HashMap<String, Object>();
31             map.put("pic", iconid[i]);
32             map.put("text", iconname[i]);
33             datalist.add(map);
34         }
35
36
37         return datalist;
38
39
40     }
41
42 @Override
43 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
44     Toast.makeText(this, "我是"+iconname[position], Toast.LENGTH_SHORT).show();
45
46 }
47
48
49
50
51 }

spinner

 1 public class FActivity extends Activity implements OnItemSelectedListener{
 2     private TextView txt;
 3     private Spinner spin;
 4     private List<String> list;
 5     private ArrayAdapter<String> arr_adapter;
 6     @Override
 7 protected void onCreate(Bundle savedInstanceState) {
 8     // TODO Auto-generated method stub
 9     super.onCreate(savedInstanceState);
10     setContentView(R.layout.factivity);
11
12     txt=(TextView) findViewById(R.id.textView1);
13     spin=(Spinner) findViewById(R.id.spinner1);
14     list=new ArrayList<String>();
15     list.add("北京");
16     list.add("上海");
17     list.add("广州");
18     list.add("深圳");
19     arr_adapter=new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
20     arr_adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
21     spin.setAdapter(arr_adapter);
22     spin.setOnItemSelectedListener(this);
23
24 }
25
26     @Override
27     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
28     String cityname=arr_adapter.getItem(position);
29 //  String name =list.get(position);
30     txt.setText("我选择居住在:"+cityname);
31
32     }
33     @Override
34     public void onNothingSelected(AdapterView<?> parent) {
35         // TODO 自动生成的方法存根
36
37     }
38
39 }

原文地址:https://www.cnblogs.com/twomeng/p/9476292.html

时间: 2024-08-03 05:30:51

慕课网/安卓攻城狮视频学习及练习(六)的相关文章

慕课网/安卓攻城狮视频学习及练习(五)——简陋计算器

简陋计算器 1 public class FActivity extends Activity implements OnClickListener{ 2 Button btn_0; 3 Button btn_1; 4 Button btn_2; 5 Button btn_3; 6 Button btn_4; 7 Button btn_5; 8 Button btn_6; 9 Button btn_7; 10 Button btn_8; 11 Button btn_9; 12 Button bt

慕课网/安卓攻城狮视频学习及练习(四)

relativelayout 子类控件自身的位置属性: framelayout absolutelayout很少使用 tablelayout 五布局之表格布局(TableLayout):TableLayout表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象. 注意:隐藏属性和收缩.拉伸属性只能放置在父类布局中. 局部属性针对于tablerow中的某个控件. activity activity的生命周期中有两个重要循环. 1.点击home,让m

十八届五中全会:实施国家大数据战略,攻城狮们,你做好准备了吗

2015年10月29日,中共中央十八届五中全会顺利闭幕.会议通过了“十三五”计划并出台了一系列重大政策.“互联网+”与“大数据”也被写入了会议公报.大数据战略被升为国家高度!攻城狮们,赶紧准备啊! 现在正是学习大数据的绝佳机遇,让我们跟随王家林老师,一起学习大数据吧,实现年薪50万的梦想! 王家林老师的第一个中国梦:免费为全社会培养100万名优秀的大数据从业人员! 您可以通过王家林老师的微信号18610086859发红包捐助大数据.互联网+.O2O.工业4.0.微营销.移动互联网等系列免费实战课

创业公司求IOS、Android攻城狮一枚

地点:北京CBD附近(地铁1号线大望路) 魅力值:送珍贵期权 你要会: 1. IOS或者Android开发 2.能够处理类似微视/秒拍的视频录制功能 3.熟悉json 4.做过第三方登录 5.爱学习 6.no zuo 7.工作经验不限 如果你适合,就别再犹豫,发简历到[email protected](饶先生),或者加TA QQ随便骚扰,TA正在求骚扰 创业公司求IOS.Android攻城狮一枚,布布扣,bubuko.com

转:攻城狮修炼秘籍

漫校园生活,孜孜不倦的你,今天书多读一点! 海康威视为你的假期精心准备了精神的饕餮大餐! 把自己投入知识的海洋吧!为即将成为一名高冷俊俏的程序猿和媛而吹响最后的号角: 各类秘籍自助区 一.测试攻城狮 <软件测试> <测试之道> 二.硬件攻城狮 基础理论:工程数学.积分变换.信号与系统.数字信号处理.自动控制原理.英语 专业课程:数电.模电.嵌入式系统.热设计.DDR3.flash.开关电源 (若有实践经验,可只看基础理论) 三.应用软件开发攻城狮 必读: <UNIX环境高级编

十年北漂,一个软件“攻城狮”到职业养鸡人的心路历程

本人(武建亮)IT屌丝出生, 2005年到北京,2006年开始正式成为程序员,曾任某公司的技术总监. 2011年开始创业,曾做过电子商务网站.礼品网.智慧旅游相关的创业项目. 2014年底,再一次创业失败,背负40w的外债,放弃一切,远离IT圈. 微信扫一扫 今年是我来北京的第10个年头,人生有几个十年,我年轻时候最美好的时光,都给了这个绚丽的闪耀着金光的城市,但是,金光是他们的,而我什么也没有,今年,我离开北京,跟来时一样,孑然一身. 2005年,我考上了北京的一所学校,带着对这座城市的幻想,

【云栖大会】程序猿、攻城狮的大聚会 他们眼中的云栖大会是啥样

2016年云栖大会进行得如火如荼,"烧脑"."前沿"."高端"."技术"."一票难求"--这些关键词把这场"干货"分享大会衬托得神秘满满,有一群人却沉浸其中,自得其乐. 他们的名字叫--程序猿.攻城狮. 从最初的站长大会,到阿里云开发者大会,再到云栖大会:从200名草根站长到4万名业内外参与者:从单一峰会发展至超过100场论坛的"巨无霸"大会:从纯谈技术到融合音乐节.

攻城狮在路上(壹) Hibernate(九)--- Hibernate的映射类型

Hibernate采用映射类型作为Java类型和SQL类型的桥梁,对应type属性.分为两种:内置映射类型和客户化映射类型.一.内置映射类型: 1.Java基本类型的Hibernate映射类型: Java基础类型的Hibernate映射类型 Hibernate映射类型 Java类型 标准SQL类型 大小和取值范围 integer或者int int或者java.lang.Integer INTEGER   long long BIGINT   short short SMALLINT   byte

什么是“攻城狮”

攻城狮就是工程师,在互联网时代,对电脑程序员的一种调侃,对码农一种自嘲. 电脑程序员(码农) 程序员,俗称码农,是专门从事电脑程序开发,维护的专业人员.在我天朝,要成为一个具有中国特色的合格程序员,应该具有以下一些素质. 团队精神(TeamWork) 现代商业社会,各行各业都需要团队精神,而团队精神是一个程序员必备的最最基本的素质.随着如今,软件,规模越来越大,软件开发不再是编程,而是工程.像求伯君那样特立独行写出的wps时代,已经一去不复返.于是进入研发团队,从事商业化和产品化的开发任务,就必