前言:本来刚忙完不久,和好友定下来3月剩下来几天好好休息休息,四月再找点活干,不过也确实闲不下来,想了想也快实习了,不如再从头做个demo,尽量把所学的知识用上,每天写一部分并且更新到github上,也是挺有意思的一件事,不过想着想着,就觉得那既然要做不如就多做点,顺带也写个博客好了,于是就注册了博客园,开始了自己的写博客之路......

项目的github地址:https://github.com/Qunter/SearchAndCall

------------------------------------------------------------------------

那么来说正题

做一个demo,希望功能能够全面,这样才能把学到的知识都用起来

首先想到的是把以前做的一个demo完善一下,不过觉得当时的fragment也是用的别人的框架,索性干脆就重新做一遍得了,名字嘛也还是叫之前那个,不过github上已经上传过这个名字了,那我就改个英文名上传好了

那么首先从创建工程开始

暂时先分这几个吧,后面有用到再加

那么下一步是先建个BaseActivity

暂时想到要抽出来的首先是三点

*初始化变量

*初始化控件

*设置沉浸式

那就先这样写,后面再添加吧

public abstract class BaseActivity extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);initVariables();initViews(savedInstanceState);initState();}//初始化变量protected abstract void initVariables();//初始化控件protected abstract void initViews(Bundle savedInstanceState);/*** 动态的设置状态栏  实现沉浸式状态栏**/private void initState() {getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){//4.4 全透明状态栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);}if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {//5.0 全透明实现Window window = getWindow();window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);window.setStatusBarColor(Color.TRANSPARENT);//calculateStatusColor(Color.WHITE, (int) alphaValue)
        }}
}

然后下一步我觉得暂时先做个登录页面,至于数据库的交互,就集成bmob进去好了

于是建一个activity和一个layout

public class LoginActivity extends BaseActivity {@Overrideprotected void initVariables() {}@Overrideprotected void initViews(Bundle savedInstanceState) {setContentView(R.layout.activity_login);}
}

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"android:background="#666666"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="登录界面"android:layout_centerInParent="true"/>
</RelativeLayout>

于是最后的结果是这样

然后,因为时间不早了,所以今天就先到这里吧

转载于:https://www.cnblogs.com/Qunter/p/6596213.html

android 练习之路 (一)相关推荐

  1. Android10.0 日志系统分析(四)-selinux、kernel日志在logd中的实现​-[Android取经之路]

    摘要:本节主要来讲解Android10.0 selinux.kernel日志在logd中的实现,包括LogAudit.LogKlog的源码分析 阅读本文大约需要花费15分钟. 文章首发微信公众号:In ...

  2. Android10.0 日志系统分析(三)-logd、logcat读写日志源码分析-[Android取经之路]

    摘要:本节主要来讲解Android10.0 logd.logcat读写日志源码内容 阅读本文大约需要花费20分钟. 文章首发微信公众号:IngresGe 专注于Android系统级源码分析,Andro ...

  3. Android10.0 日志系统分析(二)-logd、logcat架构分析及日志系统初始化-[Android取经之路]

    摘要:本节主要来讲解Android10.0 日志系统的架构分析,以及logd.logcat的初始化操作 阅读本文大约需要花费15分钟. 文章首发微信公众号:IngresGe 专注于Android系统级 ...

  4. Android10.0 日志系统分析(一)-logd、logcat 指令说明、分类和属性-[Android取经之路]

    摘要:本节主要来讲解Android10.0 日志系统的logd.logcat相关指令说明.日志分类和常用日志属性 阅读本文大约需要花费15分钟. 文章首发微信公众号:IngresGe 专注于Andro ...

  5. Android 10.0 PackageManagerService(三)APK扫描-[Android取经之路]

    摘要:上一节讲解了PKMS的 权限扫描,扫描/system/etc/permissions中的xml,存入相应的结构体中,供之后权限管理使用. 这一节主要来讲讲APK的扫描. 阅读本文大约需要花费15 ...

  6. Android 10.0 PackageManagerService(二)权限扫描-[Android取经之路]

    摘要:PackageManagerService在systemReady()后,进行了/system/etc/permissions中的各种xml进行扫描,进行相应的权限存储,供以后使用 阅读本文大约 ...

  7. Android 10.0 PackageManagerService(一)工作原理及启动流程-[Android取经之路]

    摘要:PackageManagerService是Android系统核心服务之一,在Android中的非常重要,主要负责APK.jar包等的管理. 阅读本文大约需要花费50分钟. 文章的内容主要还是从 ...

  8. Android10.0应用进程创建过程以及Zygote的fork流程-[Android取经之路]

    摘要:点击手机桌面图标,例如微信,它是如何启动的呢,让我们从系统源码级来一起分析. 阅读本文大约需要花费1小时. 文章的内容主要还是从源码进行分析,虽然又臭又长,但是如果想要学习Android系统源码 ...

  9. Android10.0系统启动之Launcher(桌面)启动流程-[Android取经之路]

    摘要:上一节我们讲完了Android10.0的ActivityManagerService的启动流程,在AMS的最后启动了Launcher进程,今天我们就来看看Launcher的真正启动流程. 阅读本 ...

  10. Android 10.0 系统服务之ActivityMnagerService-AMS启动流程-[Android取经之路]

    摘要:上一节我们讲完了SystemServer的启动过程,这一节接着上一节的步骤,来讲解ActivityManagerService的启动过程. ActivityManagerService简称AMS ...

最新文章

  1. 绘制ROC 曲线 计算 AUC PR曲线(精准率 召回率)示例
  2. 名字就叫nfs-(network file system)
  3. PYTHON高级全栈开发工程师-老男孩教育
  4. 建立索引lucene_用Lucene建立搜索索引
  5. 压控元器件和流控元器件
  6. 利用接口做参数,写个计算器,能完成加减乘除运算。 (1)定义一个接口Compute含有一个方法int computer(int n, int m)。 (2)设计四个类分
  7. Dream------scala--开发环境搭建
  8. unity ui框架_[教程汇总+持续更新]Unity从入门到入坟——收藏这一篇就够了
  9. win11如何进行bug反馈 windows11进行bug反馈的步骤方法
  10. 345取出值怎么算角度_资料分析怎么提分?这几个公式你必须会!
  11. 实习成长之路:设计模式一:为什么你明明使用面向对象设计语言总写面向过程的程序?
  12. 服务器硬盘检测工具有哪些,最常用的10大服务器管理工具
  13. 智能变电站基本原理和IEC61850
  14. 装机出现“我们检测到您的硬盘是GPT格式但未找到ESP分区”解决方法
  15. 在直播软件搭建中,如何基于rtmp实现视频直播?
  16. win10系统下mysql数据库启动不起来
  17. 【洛谷P2947】向右看齐
  18. 更改cognos upfront 的外观
  19. 气化及燃烧相关知识点
  20. Linux 更改只读文件方法

热门文章

  1. JS字符转为json对象
  2. 百分点发布《数据决策力白皮书》:数据的能量才开始激发
  3. 关于Servlet出现乱码问题
  4. 转(HP大中华区总裁孙振耀退休感言)
  5. windows 7 64bit python3.3安装pyqt
  6. 安装Ms SQL Server 2005 开发版时出现性能计数器要求安装错误的解决办法
  7. ubuntu tftp 服务器故障排除一例
  8. 计算机应用基础 制作表格说课稿,职业教育:计算机应用基础类一等奖作品《Premiere视频制作初体验》说课稿.docx...
  9. eclipse物联网_Eclipse如何推动物联网发展
  10. android开源2016_2016年开源年鉴:现在提供印刷版