2013年6月22日 22:29:43

来源:互联网 发布:下载cad绘图软件 编辑:程序博客网 时间:2024/06/06 08:14

0622,memo
实现跳转:
onItemClickListener有; public void onItemClick参数paramInt行号
(目前有错,MemoGenericView的51行没有删除按钮,是xml里没添;xml里组件id命名不规范,文件名写少了)

//0622-1,MemoMainListAdapter里,给数组添加get,set方法
//0622-2,MemoMain,implements OnItemClickListener,
onItemClick里:// 选中的行序号一定要小于数据的长度,否则不能实现跳转
  if (arg2 < mListAdapter.getmCursir().length) {
   Intent intent = new Intent(this, MemoEdit.class);
   MemoGenericView mView = (MemoGenericView) arg1;
   // 获取选中这一行的文本
   String content = ((TextView) mView.getChildAt(0)).getText()
     .toString();// 子节点,iphonememo_main_listitem.xml第一个
   intent.putExtra("content", content);
   startActivity(intent);
   finish();
  }
 }
//0622-3,onCreate里:把监听器注册 :mListView.setOnItemClickListener(this);
//0622-4 MemoListView里,先boolean flag=super.onTouchEvent(ev);
if (selectRow != null) {
 selectRow.showDeleteBtn();
  //0622-4,行数不为空就显示出按钮
 flag=true;
}
(师讲MemoListView里,onTouchEvet,大量判断组件的点击与否,希望我们自己实现,去看源码吧)
边学变看扁去做,至实现,我们的目的是多去读代码

讲Intent:(第八章 android应用程序之间的通讯)
不能直接跳,因为会被紧密联系在一起。用意图
理解Intent
使用Intent启动系统组件
intent的属性及intent-filter配置
使用intent创建Tab页面

Intent对象及其属性,
Component属性来制定需要启动的组件(原来经常写的跳转class是简写),
ComponentName(String pkg,String cls);package是不同应用程序放的
事例:
先传:Intent intent=new Intent();ComponentName cn=new Component(xx.this,s2xx.class);intent.setComponent(cn);startActivity(intent);
接收:可看ComponentName comp=getIntent().getComponent();显示组件包名comp.getPackageName();类名comp.getClassName();

ComponentName(Context pkg,String cls);包名:"com.lovo.lesson9"(可配置xml里看)(Context:上下文)
ComponentName(Context pkg,Class<?>cls);类的全路径:"xxxxx"(域名作为包名来保证唯一性,至少2级)

Action动作、Category类别 属性
事例,intent传:直接写intent.setAction("action名");再start..,则直接跳到xml设置了这个action属性的Activity(如系统设置的主入口xxx.MAIN是主入口)
Category可以设多个,只要你的Activity里有其一属性即可(事例intent传,intent.addGategory;)
属性表一大堆.LAUNCHER是选中用到的
若返回系统Home桌面,new intent();setAction(Intent.ACTION_MAIN);addCategory(Intent.CATEGORY_HOME);

Data接受个Uri对象、Type明确指定Data属性所指定数据的类型或MIME类型,有设Data就可不设此、Extra属性
如String data="http:www.baidu.com";
Uri uri=Uri.parse(data);
intent.setAction(Intent.ACTION_VIEW);
intent.setData(uri);
startActivity(intent);
还可设置跳到通讯录,以后的增删查等统统都是经过这个Uri;
拨号是Intent.ACTION_DIAL,数据是tel:1231354;

练习跳至电话界面,获取电话薄的联系人信息并显示

使用Intent创建Tab页面,(需下来好好整下),直接新个类继承TabHost,要注册,不用写xml,用以下代码即可
TabHost tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("主界面").setContent(new Intent(this,MainActivity.class)));
tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("显示界面").setContent(new Intent(this,ShowActivity.class)));

写个类继承TabActivity,onCreate里把上面3句话加进去

明天讲service,

今天没什么说的,回来又逛着耍了..这会再继续看代码吧~

这一脸幸福和幻想的表情..简单说就是YY~

原创粉丝点击