Android 开发学习笔记

第二天学习Android开发,目标是参加谷歌Android大赛,争取拿个奖回来,不过奖励是小,积累开发经验是大,也好在找工作的日子里找一个好工作~~


今天学习内容:helloworld 主要涉及内容是 一个Activity是一个窗口的感觉,每次新建一个Activity都,然后在xml中AndroidManifest.xml里面注册一下。

Android的资源都在Res里记录这,例如目录values里面 的string,可以定义程序中使用的所有字符串,在layout中,则定义了所有的UI,实现了MVC的涉及模式

而引用这些资源要使用R类为 桥梁来访问这些资源,例如setContentView(R.layout.main);

如果要使用layout中定义的资源,例如一个button,我们在UI编辑窗口可以编辑这个UI部件的ID,然后在主程序中,通过ID来引用这个部件


例如我们在main layout中定义一个button,编辑它的id是 button1,这个时候,button1在这个id,在R这个类中就自动生成了一个成员,名字和button1是一样的,我们可以引用这个button1来引用这个资源。

代码如下:Button button = (Button)findViewById(R.id.button2);

然后就可以对button进行逻辑编辑,例如增加相应函数:

button.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				/* 新建一个Intent对象 */
				Intent intent = new Intent();
				/* 指定intent要启动的类 */
				intent.setClass(Activity01.this, Activity02.class);
				/* 启动一个新的Activity */
				startActivity(intent);
				/* 关闭当前的Activity */
				Activity01.this.finish();
			}
		});
这部分代码就是调用button,来添加click响应函数的

里面的Intent的含义是一个用来调用从一个activity切换到另一个activity用的。实现类似界面切换这种功能


例子3给的例子是访问通讯录,通讯录的访问方式随着版本的不同发生了一些变化,实践中,NUMBER字段已经没有了,下面的代码可以获得电话号码和用户

        ContentResolver cr = getContentResolver();  
        
        //取得电话本中开始一项的光标
        Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
        //向下移动一下光标
        while(cursor.moveToNext()) 
        { 
        	//取得联系人名字
        	int nameFieldColumnIndex = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);     
        	String contact = cursor.getString(nameFieldColumnIndex); 
        	String contactId = cursor.getString(cursor.getColumnIndex(PhoneLookup._ID));
        	Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,
        			        ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=" + contactId,null,null);
        	while(phone.moveToNext())
        	{
        		int phoneFieldcolumnIndex = phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
        		String phoneNumber = phone.getString(phoneFieldcolumnIndex);
        		string += contact +":" + phoneNumber + "\n";
        	}
                phone.close();
        	//string += (contact+":"+number+"\n");
        }
        cursor.close();
		//设置TextView显示的内容
	tv.setText(string);





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值