扣丁学堂笔记第13天ActionBar、电话服务与内容分享

1.ActionBar

基本使用

新建Activity要继承自ActionBarActivity,获取一个ActionBar实例时要导入v7下的包getSupportActionBar();

搜索和分享操作栏

(注:由于用的是Eclipse,导入v7包时出现各种错误,ActionBar部分暂时略过)

导航栏

2.电话服务

TelephonyManager

监听电话状态代码

MainActivity

package com.example.telephonytest;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        telephoneManager();
    }

    public void telephoneManager(){
    	TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
    	tm.listen(new MyPhoneListener(), PhoneStateListener.LISTEN_CALL_STATE);
    }

    //这里的MyPhoneListener是一个类而不是接口
    private static class MyPhoneListener extends PhoneStateListener{

    	//重写onCallStateChanged方法
    	@Override
    	public void onCallStateChanged(int state, String incomingNumber) {
    		// TODO Auto-generated method stub
    		super.onCallStateChanged(state, incomingNumber);
    		switch(state){
    		case TelephonyManager.CALL_STATE_IDLE:
    			System.out.println("挂机状态……");
    			break;
    		case TelephonyManager.CALL_STATE_OFFHOOK:
    			System.out.println("接听状态……");
    			break;
    		case TelephonyManager.CALL_STATE_RINGING:
    			System.out.println("响铃状态……");
    			break;
    		}
    	}
    }
}

清单文件

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

来电显示案例

3.App内容共享

分享文本和图片内容

分享简单文本内容代码

MainActivity

package com.example.appsharetest;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

	public void shareTextClick(View view) {
		Intent intent = new Intent();
		intent.setAction(Intent.ACTION_SEND);
		intent.setType("text/plain");
		intent.putExtra(Intent.EXTRA_TEXT, "分享简单文本内容");
		startActivity(intent);//startActivity(intent.createChooser(intent, "指定选择器"));
	}
}

分享图片内容代码

MainActivity

public void shareImageClick(View view){
		Uri uri = Uri.parse("/sdcard/1.jpg");
		Intent intent = new Intent();
		intent.setAction(Intent.ACTION_SEND);
		intent.setType("image/jpg");
		intent.putExtra(Intent.EXTRA_STREAM,uri);
		startActivity(Intent.createChooser(intent,"分享图片到"));
	}

分享多件内容和接收

从其他应用程序接收简单数据

使用ShareActionProvider

时间: 2024-11-13 22:52:50

扣丁学堂笔记第13天ActionBar、电话服务与内容分享的相关文章

扣丁学堂笔记第11天广播接收器、短信与闹钟服务

1.默认广播 MainActivity package com.example.broadcastreceivertest; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; public class MainActivity extends Activity { @Override protected void onCre

扣丁学堂笔记第20天动画与图形

1.补间动画(Tween)与帧动画(Frame) 在res下新建一个anim文件夹,自定义四种动画的xml文件 alph_anim.xml <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="0.0&q

【扣丁学堂】月薪1700元退伍兵哥蜕变为月薪万元IT男

IT教程视频:扣丁学堂 季晓健,2007年中专毕业后,谋求到一份还算稳定的工作,在某市药品仓库当管理员,月薪1700元.这份工作在父母.亲戚看来还算不错,但小季心里却并不这么认为.他从即将退休的50多岁的老员工身上看见了自己的未来 -- 在一成不变且没有前途的工作中虚度时光,如果不做出改变,未来的自己也将是这样熬到退休!小季想想都觉得可怕,改变现状成为他内心深处的渴望! 在深思熟虑之后,小季做出了人生的第一次改变 --入伍当兵.2008年,小季应征入伍,这是一条可以改变命运的选择 -- 中国很多

【扣丁学堂】全球IT员工收入,IT员工平均年薪27万

每日一课:扣丁学堂 中国IT员工工资排名多少你知道吗?专业的IT教育扣丁学堂带你一起了解:中国 IT 专业人员的平均年薪为 42689 美元 (约合人民币 272142 元) ,而印度为 41213 美元,美国为 132877 美元. MyHiringClub.com 对全球约 1 万家企业的薪水进行了调查,评出了各国处于职业生涯中期的 IT 专业人员的平均薪水.数据显示,中国 IT 专业人员的平均年薪为 42689 美元,排名第 13 位,同比增长 7%. 此外,印度 IT 专业人员的平均薪水

【扣丁学堂】给自己一个机会、人生才能华丽转身!

每日一课:扣丁学堂 毕业2年没有找到工作,在扣丁学堂学习4个月iOS开发,年薪15万. 我叫曾加,来自北方的坝上草原,08年毕业于张家口建筑学院,计算机系,由于是一个专科学校,加之学校学习的课程离企业开发相差甚远.辗转2年相继在张家口.北京.天津几个城市找工作都没有什么结果-, 直到2015年4月在网上无意中发现了扣丁学堂这个网站,上面专门是讲移动开发的,有iOS.Android和Cocos2d-x游戏开发等课程.课程很系统.很精细.这里提供了免费的视频课程. 因为找了两年工作了也很着急,俗话说

【扣丁学堂】威哥:Android会死,你还学吗?

每日一课:扣丁学堂 标题这个问题笔者被很多童鞋问了N次,不管是QQ里.微信里.微博里.还是更私密的电话里,我可以想像他们那一脸茫然的表情里,渴望从你那里得到一点点信息,或是表示惊讶,或是对自己即将要选择的路再给一次犹豫的机会来证明自己的慎重,再或是可以在家人同学朋友面前炫耀一下:"我对自己的未来是有长远考虑的".所以,写这篇文章的目的,我不是想讨论Android会不会真的死,你应不应该去学等这些问题,因为这就好像在讨论是先有鸡,还是先有蛋的问题,结果只是个人的片面理解而已,我只想给初入

【扣丁学堂】10个理由让你继续干IT

每日一课:扣丁学堂 作为iOS与Android培训领头羊的扣丁学堂,对iOS与Android的研究都是走在互联网发展的潮流最前沿,把最新最好的技术教导给学生. 在课程体系外,还有很多有趣的IT资讯分享给大家: 我曾在"正规"IT这个行当中几进几出.已经从挫折这所学校里面了解到了许多坚守下来的理由.说实话,或多或少地,上述每一条我都有做不到的地方.当你真正了解了干IT的基本理由之后,你就会知道,是IT而不是别的职业能够满足技术头脑的更多需求. 1.钱,钱,钱 对,我们努力工作就是为了赚钱

【扣丁学堂】苹果的百年圆梦之路,你知道吗?

每日一课:扣丁学堂 近年来的苹果发布会,大有"过年"的趋势,最早的时候,全世界满怀期待,苹果也总能推出革命性产品,缔造了一个又一个经典瞬间,特别是 iPhone3Gs到iPhone4的设计升级,简直亮瞎了双眼,那种感觉就好像父亲在95年的时候,给家里买回来一台VCD机:随后,iPhone5s 的土豪金,iPhone6的大屏幕也都算是可圈可点的小革命. 那么苹果是如何发展成为世界一流互联网界的龙头坐拥霸主之位的呢? 扣丁学堂带你一起笑看市场,给iPhone找出一条平凡之路. 宏观看上去,

【扣丁学堂】程序员:细节决定成败

每日一课:扣丁学堂 你知道在线教育吗?你知道在哪可以学到更多更丰富的互联网专业知识吗? 没错,扣丁学堂可以带给你更快捷更方便的学习体验,让你快速跻身互联网专业领域,实现年薪十万的梦想. 下面,扣丁将会带你走进IT行业,浅谈成为优秀程序员应该养成的习惯. 首先,所有的程序都需要某种形式的日志记录建立在它们之上,以便我们可以观察到它正在做什么.这尤其在程序出错时就显得非常重要.一个优秀的程序员和一个糟糕的程序员之间的一个不同之处是一个优秀的程序员会增加日志或其他工具以便在程序失败时方便调试. 当程序