Android版简历(二)
涉及技术
第一步:创建菜单
@Overridepublic boolean onCreateOptionsMenu(Menu menu) {menu.add(0, 1, 1, "电话联系我");menu.add(0, 2, 2, "短信通知我");return super.onCreateOptionsMenu(menu);}
这是处理点击事件的代码:
@Overridepublic boolean onOptionsItemSelected(MenuItem item) {if(item.getItemId() == 1) {//电话联系} else if(item.getItemId() == 2) {//短信通知}return true;}
接下来我们就可以集中处理业务了。
//电话联系Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"+ MY_PHONE_NUMBER));startActivity(intent);
很简单的代码, Intent.ACTION_CALL表示的是调用打电话的程序,同时我们传入一个表示数据的Uri,关于这个Uri的格式,在文档中的Input有说,也就是 tel: 接上电话号码,这样的格式。再看发短信的例子:
//短信通知Uri uri = Uri.parse("smsto:"+ MY_PHONE_NUMBER);Intent intent = new Intent(Intent.ACTION_SENDTO, uri);intent.putExtra("sms_body", "你好,谢景扬同学。");startActivity(intent);
我们使用了 Intent.ACTION_SENDTO,传递一个 smsto: 接上电话号码,就可以实现发短信给某人,同理,emailto:接邮箱地址就可以发送邮件。同时,我们还要给短信添加内容,添加的方式如代码所示,这里你也可以更自信的写:“你好,谢景扬同学,恭喜你已经通过了我们公司的面试。”
我们创建好的菜单就是下面的样子,还有发短信的界面:
第二步:头像点击
private class PhotoClickListener implements View.OnClickListener {@Overridepublic void onClick(View view) {Intent i = new Intent(context, PagerActivity.class);startActivity(i);}}
到此,MainActivity就已经完成了,完整的代码请看 这里。
第三步:设计PagerActivity
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"><android.support.v4.view.ViewPagerandroid:id="@+id/viewpager"android:layout_width="wrap_content"android:layout_height="wrap_content"style="@style/AppBackground"><android.support.v4.view.PagerTitleStripandroid:id="@+id/viewtitle"android:layout_width="wrap_content"android:layout_height="wrap_content"style="@style/AppBackground" /></android.support.v4.view.ViewPager></LinearLayout>
因为我们使用的是自定义控件,所以要写全控件所在的包名。这里我还定义了一个style,用于统一应用程序的背景,方便维护更改,style定义如下:
<style name="AppBackground"><item name="android:background">#2F8FBF</item></style>
这个时候我们还看不出效果,因为还没有为ViewPager添加数据,ViewPager同样是基于Adapter来处理数据的,它有一个特有的Adapter叫PagerAdapter,我们创建一个内部类继承PagerAdapter,复写该复写的方法,如果你写过ListView,那么看到这些方法应该很容易上手,没用过ListView也没关系,看一次就明白这些方法的意思了。
首先我们得有两个数据集,来存放用于切换的View和对应显示的标题:
private class MyPagerAdapter extends PagerAdapter {@Overridepublic int getCount() {return viewList.size();}@Overridepublic Object instantiateItem(ViewGroup container, int position) {//return super.instantiateItem(container, position);container.addView(viewList.get(position));return viewList.get(position);}@Overridepublic void destroyItem(ViewGroup container, int position, Object object) {//super.destroyItem(container, position, object);container.removeView(viewList.get(position));}@Overridepublic CharSequence getPageTitle(int position) {//return super.getPageTitle(position);return titleList.get(position);}@Overridepublic boolean isViewFromObject(View view, Object o) {return view == o;}}
这段代码要我解释,我也说不出什么,方法名称已经很容易理解了,而且基本就是这个模式了,以后再写个PagerAdapter估计也就是差不多的代码,所以就不解释了。
结尾
Android版简历(二)相关推荐
- Android版简历(一)
简介 本人是二本应届毕业生,由于近来找工作,有的公司比较挑学校,好几次都没有笔试的机会.所以我决定弄点让人眼前一亮的东西,因为我个人比较喜欢Android开发(个人觉得我的J2EE比较好,Androi ...
- Android版简历(四)
涉及技术 自定义控件.自定义控件动画 第一步:继承自定义控件 虽然已经实现了需要的控件,但是这个控件的功能还是不够强大,使用起来也不够方便.举个例子:让 控件的颜色随着能力值的大小而不同或者是 点击之 ...
- windows 环境下,编译android 版opencv-4.5.5,并添加opencv_contrib-4.5.5 扩展模块
参考博客:(130条消息) windows10 vs2019 版本:cmake将 opencv_contrib-4.5.5 扩展模块编译添加到 opencv-4.5.5 正式版中_Chhjnavy的博 ...
- Android平台下二维码漏洞攻击杂谈
路人甲 · 2015/12/02 12:42 0x00 前言 现在Android App几乎都有二维码扫描功能,如果没有考虑到二维码可能存在的安全问题,将会导致扫描二维码就会受到漏洞攻击,严重的可能导 ...
- Android版数据结构与算法汇总十二章
Android版数据结构与算法(一):基础简介 https://www.cnblogs.com/leipDao/p/9140726.html Android版数据结构与算法(二):基于数组的实现Arr ...
- [Unity+Android]横版扫描二维码
更多教程请访问: http://dingxiaowei.cn/ 终于解决了一个忧伤好久的问题,严重拖了项目进度,深感惭愧!一直被一系列的问题所困扰,然后又只能自己一个人摸索,也是一段辛酸忧伤史,现在小 ...
- 利用电脑玩android版天天连萌刷高分 二,利用计算机玩Android版“天天连萌”刷高分(一)——截图...
利用电脑玩Android版"天天连萌"刷高分(一)--截图 这几周微信游戏"天天连萌"由于第一名总是被一个同学所占据(没办法,我等级不够高游戏细胞又没他好),总 ...
- 从简历被拒,到 Android 面试。二本如何在 359 天成功拿下 offer
免费福利 此份文档详细记录了千道面试题与详解: ! 私信我回复[03]即可免费获取 二.面试背景 自从去年被头条笔试的算法凌辱和被头条的前辈指教了之后对头条没啥好感了,也感觉进不去,所以后面 ...
- 利用电脑玩android版天天连萌刷高分 二,利用计算机玩Android版“天天连萌”刷高分(四)——模拟按键及程序优化...
利用电脑玩Android版"天天连萌"刷高分(四)--模拟按键及程序优化 这一系列文章,没想到从去年10月份以来,写了三篇我就忘了写了,现在才想起来,所以一不小心就成了跨年系列文章 ...
最新文章
- 12月22日 find命令
- 印度首富要免费向全国提供4G网络3个月
- 安利一下这个群投票的小程序,比较好用
- git灰度发布版本_spring cloud灰度发布
- python中0o10_Python基础10—I/O编程
- 【Level 09】U1 The way I see it L1 A great adventure
- 可拖动的进度条_视频号全新升级!进度条可拖动、支持@、支持转发......
- [转]从青铜到王者,一文教你节省90%内存占用
- hexo之next主题添加分类
- 中位数±四分位数表达_Python数据分析:强大字符串处理工具,正则表达式
- C/C++ C# unity Python 帮助文档 书籍 学习资料
- redhat 5.4 搭建本地YUM源
- stm32的命名及选型介绍
- 固态硬盘在线测试软件,SSD检测工具(SSDlife Pro)
- 人工智能机器学习数据挖掘重要会议日期
- 超神学院暗质计算机,超神学院之拳皇
- 第二类增值电信业务经营许可证在哪里办?
- 拼团系统开发|全民拼购商业模式解读
- 计算机上无线网络开关在哪里,笔记本电脑的无线网开关在哪里打开
- 推荐一个不到2MB的C#开发工具箱,集成了上千个常用操作类