1. public class BaseActivity extends Activity {
  2. Resources res; // 通用资源缩写
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. requestWindowFeature(Window.FEATURE_NO_TITLE);// 不显示标题
  6. super.onCreate(savedInstanceState);
  7. res = getResources(); // 通用资源缩写
  8. // 优化输入法模式
  9. int inputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN;
  10. getWindow().setSoftInputMode(inputMode);
  11. }
  12. /**
  13. * 检查字符串是否是空对象或空字符串
  14. *
  15. * @param str
  16. * @return 为空返回true,不为空返回false
  17. */
  18. public boolean isNull(String str) {
  19. if (null == str || "".equals(str) || "null".equalsIgnoreCase(str)) {
  20. return true;
  21. } else {
  22. return false;
  23. }
  24. }
  25. /**
  26. * 检查字符串是否是字符串
  27. *
  28. * @param str
  29. * @return 为空返回true,不为空返回false
  30. */
  31. public boolean isStr(String str) {
  32. return !isNull(str);
  33. }
  34. /**
  35. * 从当前activity跳转到目标activity,<br>
  36. * 如果目标activity曾经打开过,就重新展现,<br>
  37. * 如果从来没打开过,就新建一个打开
  38. *
  39. * @param cls
  40. */
  41. public void gotoExistActivity(Class<?> cls) {
  42. Intent intent;
  43. intent = new Intent(this, cls);
  44. intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
  45. startActivity(intent);
  46. }
  47. /**
  48. * 新建一个activity打开
  49. *
  50. * @param cls
  51. */
  52. public void gotoActivity(Class<?> cls) {
  53. Intent intent;
  54. intent = new Intent(this, cls);
  55. startActivity(intent);
  56. }
  57. /**
  58. * 通用消息提示
  59. *
  60. * @param resId
  61. */
  62. public void toast(int resId) {
  63. Toast.makeText(this, resId, Toast.LENGTH_SHORT).show();
  64. }
  65. /**
  66. * 通用消息提示
  67. *
  68. * @param resId
  69. */
  70. public void toast(String msg) {
  71. Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
  72. }
  73. /**
  74. * 从资源获取字符串
  75. *
  76. * @param resId
  77. * @return
  78. */
  79. public String getStr(int resId) {
  80. return res.getString(resId);
  81. }
  82. /**
  83. * 从EditText 获取字符串
  84. *
  85. * @param editText
  86. * @return
  87. */
  88. public String getStr(EditText editText) {
  89. return editText.getText().toString();
  90. }
  91. @Override
  92. public boolean onKeyDown(int keyCode, KeyEvent event) {
  93. switch (keyCode) {
  94. case KeyEvent.KEYCODE_BACK:
  95. this.finish();
  96. }
  97. return super.onKeyDown(keyCode, event);
  98. }
  99. }

android Activity基类通用方法的更多相关文章

  1. Android 自定义Activity基类与TitleBar

    我们在开发App的时候有时候碰到多个界面有一个共同点的时候,比如,都有相同的TitleBar,并且TitleBar可以设置显示的文字.TitleBar上的点击事件,如果给每一个Activity都写一遍 ...

  2. Android 自己定义Activity基类

    我们在开发App的时候有时候碰到多个界面有一个共同点的时候.比方,都有同样的TitleBar.而且TitleBar能够设置显示的文字.TitleBar上的点击事件,假设给每个Activity都写一遍T ...

  3. android 在基类activity中注册BroadcastReceiver,子activity类实现响应

    android app 一般都会定义自己的BaseActivity, 如果各子Activity都需要接收广播但对广播的处理又不同时,可以考虑在BaseActivity中注册BroadcastRecei ...

  4. 【Android进阶】为什么要创建Activity基类以及Activity基类中一般有哪些方法

    现在也算是刚刚基本完成了自己的第一个商业项目,在开发的过程中,参考了不少人的代码风格,然而随着工作经验的积累,终于开始慢慢的了解到抽象思想在面向对象编程中的重要性,这一篇简单的介绍一下我的一点收获. ...

  5. 【Android先进】我们为什么要创建Activity基类Activity什么是一般的基类方法

    今天,它可以被视为只是基本完成了其首个商业项目,在发展过程中,风格,然而随着工作经验的积累.最终開始慢慢的了解到抽象思想在面向对象编程中的重要性,这一篇简单的介绍一下我的一点收获. 首先,在如今的项目 ...

  6. Android之TelephonyManager类的方法详解

    TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法.其中包括手机SIM的状态和信息.电信网络的状态及手机用户的信息.在应用程序中可以使用这些get方法获取 ...

  7. android baseApplication 基类

    package com.free.csdn.base; import java.io.File;import java.util.ArrayList;import java.util.List; im ...

  8. 在对Activity基类的封装中,我做了什么

    在开发实践中,不同Activity有很多代码是反复冗余的.因此非常有必要将这部分抽取出来.封装一个继承自Activity的类,命名为BaseActivity. 翻看之前写过的代码,起初,BaseAct ...

  9. Android中GPS类及方法简介

    GPS是Global Positioning System(全球定位系统)的简称,它的作用就是为全球的物体提供定位功能.GPS定位是一门高新技术,但对于Android程序员来说,开发GPS功能的应用程 ...

随机推荐

  1. BZOJ1915: [Usaco2010 Open]奶牛的跳格子游戏

    权限题,没有传送门. 这很显然是一道DP题,刚看完题目可能会比较懵逼.这道题如果不要求回去,那么就是一道很裸的DP题.但是本题要求回去而且回去的格子的前一个格必须是之前经过的. 先不考虑回去的路程,对 ...

  2. python模块app登陆认证(M2Crypto数字证书加密)

    需求: 1.通过数字证书,非对称加密方式传送对称秘钥给服务端 2.用户名.密码使用对称秘钥加密,发送服务端验证 3.传送数据使用字节流方式 实现思路: 1.了解python的struct模块,用于字节 ...

  3. ServiceStack.Text 更快的序列化

    Json.net 是以前最经常用的序列化组件,后来又注意到ServiceStack号称最快的,所以我做了以下测试 1)Json.net using System; using System.Colle ...

  4. eclipse中SSH三大框架环境搭建<一>

    这里先简单介绍一下我用的三大框架版本以及下载地址 相关链接:eclipse中SSH三大框架环境搭建<二> eclipse中SSH三大框架环境搭建<三> struts-2.3.3 ...

  5. 自然语言14_Stemming words with NLTK

    https://www.pythonprogramming.net/stemming-nltk-tutorial/?completed=/stop-words-nltk-tutorial/ # -*- ...

  6. cmake 编译 c++ dll 的一个例子(更新2:增加 python 调用方法)

    CMakeLists.txt project(xxx) add_library(xxx SHARED xxx.cpp) add_executable(yyy yyy.cpp) target_link_ ...

  7. 修改输入框placeholder文字默认颜色-webkit-input-placeholder

    html5为input添加了原生的占位符属性placeholder,高级浏览器都支持这个属性,例如: <input type="text" placeholder=" ...

  8. jquery取消选择select下拉框

    有三个select下拉框一个大类,两个小类隐藏,需要在选择大类的时候,小类显示同时清除另外的小类选择的项这需求有点儿.......... 下面是三个select: <select name=&q ...

  9. java从一个目录拷贝文件到另一个目录下

    ** * 复制单个文件 * @param oldPath String 原文件路径 如:c:/fqf.txt * @param newPath String 复制后路径 如:f:/fqf.txt * ...

  10. thinkphp 项目分组 -开发随笔1

    php中变量的声明, 和变量的初始化 是结合在一起的, 要声明变量, 就是通过初始化变量来实现的. 感觉页面版式的布局, 还是: 先大致规划出布局, 如两栏 三栏, 一览的左右上下结合, 搭配. 然后 ...