读书笔记 第一行代码 第二章Activity相关

1、隐藏标题栏

Android4.0后添加ActionBar(即标题栏)功能,为避免标题栏占用屏幕空间,可通过一下方法进行隐藏。

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

//注意:此行代码必须在setContentVIew之前执行,否则会报错。

requestWindowFeature(Window.FEARURE_NO_TITLE);

setContentView(R.layout.main_layout);

}

2、系统常用Uri和Intent设置

  2.1 安装指定apk
    
    

public void setupAPK(String apkname){
        String fileName = Environment.getExternalStorageDirectory() + "/" + apkname;
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");
        mService.startActivity(intent);    
    }


  2.2  进入联系人页面

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(People.CONTENT_URI);
startActivity(intent);
  2.3  查看指定联系人
Uri personUri = ContentUris.withAppendedId(People.CONTENT_URI, info.id);//info.id联系人ID
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(personUri);
startActivity(intent);

  2.4 显示网页

Uri uri = Uri.parse("http://www.google.com");
Intent it = new Intent(Intent.ACTION_VIEW,uri);
startActivity(it);

  2.5 显示地图

Uri uri = Uri.parse("geo:38.899533,-77.036476");//经纬度
Intent it = new Intent(Intent.Action_VIEW,uri);
startActivity(it);
  2.6 路径规划
Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");
Intent it = new Intent(Intent.ACTION_VIEW,URI);
startActivity(it);
  2.7 拨打电话,调用拨号程序
要使用这个必须在配置文件中加入<uses-permission id="android.permission.CALL_PHONE" />

Uri uri = Uri.parse("tel:xxxxxx");
Intent it = new Intent(Intent.ACTION_DIAL, uri);   
startActivity(it);

   

  2.8 发送SMS/MMS,调用发送短信的程序

 Intent it = new Intent(Intent.ACTION_VIEW);
 it.putExtra("sms_body", "The SMS text");
 it.setType("vnd.android-dir/mms-sms");
 startActivity(it);  


2.9 发送短信到指定号码
 

 Uri uri = Uri.parse("smsto:0800000123");
 Intent it = new Intent(Intent.ACTION_SENDTO, uri);
 it.putExtra("sms_body", "The SMS text");
 startActivity(it);   


2.10 发送彩信
 

 Uri uri = Uri.parse("content://media/external/images/media/23");
 Intent it = new Intent(Intent.ACTION_SEND);
 it.putExtra("sms_body", "some text");
 it.putExtra(Intent.EXTRA_STREAM, uri);
 it.setType("image/png");
 startActivity(it);




2.11 发送Email
 Uri uri = Uri.parse("mailto:xxx@abc.com");
 Intent it = new Intent(Intent.ACTION_SENDTO, uri);
 startActivity(it);



指定收件人的email
 Intent it = new Intent(Intent.ACTION_SEND);
 it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");//指定收件人
 it.putExtra(Intent.EXTRA_TEXT, "The email body text");//邮件内容
 it.setType("text/plain");
 startActivity(Intent.createChooser(it, "Choose Email Client"));   



指定其他内容的email

 Intent it=new Intent(Intent.ACTION_SEND);   
 String[] tos={"me@abc.com"};   
 String[] ccs={"you@abc.com"};   
 it.putExtra(Intent.EXTRA_EMAIL, tos);   
 it.putExtra(Intent.EXTRA_CC, ccs);   
 it.putExtra(Intent.EXTRA_TEXT, "The email body text");   
 it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");   
 it.setType("message/rfc822");   
 startActivity(Intent.createChooser(it, "Choose Email Client"));



添加附件的email


 Intent it = new Intent(Intent.ACTION_SEND);
 it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
 it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");
 sendIntent.setType("audio/mp3");
 startActivity(Intent.createChooser(it, "Choose Email Client"));


2.12 播放多媒体
 
 Intent it = new Intent(Intent.ACTION_VIEW);
 Uri uri = Uri.parse("file:///sdcard/song.mp3");
 it.setDataAndType(uri, "audio/mp3");
 startActivity(it);

 Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");
 Intent it = new Intent(Intent.ACTION_VIEW, uri);
 startActivity(it); 


2.13 Uninstall 程序
 Uri uri = Uri.fromParts("package", strPackageName, null);
 Intent it = new Intent(Intent.ACTION_DELETE, uri);
 startActivity(it);
3、随时随地退出程序

    思路:创建一个专门的集合类对所有的活动进行管理。

4、启动其他activity的最佳写法

  思路:可以在待启动activity中添加一个actionStart方法,在这个方法中完成Intent的构建,并通过参数将需要传递的数据暴露给需要启动此Activity的开发人员。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值