×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

APP项目设计关于BaseActivity步骤详解

文章编辑:网站建设 文章来源:APP开发 浏览量:

  开发APP项目对于BaseActivity设计步骤详解,深圳APP开发公司首先聊聊应用级别的BaseActivity设计,应用级别的BaseActivity作为各模块Activity的基类,主要是定义一些公共的行为,或各功能模块Activity都可能会用到的方法。这样也可以起到规范开发人员开发行为的作用,包括以下内容。
(1)如果APP只支持竖屏或横屏,可以在BaseActivity设置好,
这样不用每个Activity都需要自己设置。
(2)记录各个生命周期方法执行的Log。
(3)在创建Activity时,基本都需要做以下三件事:初始化变量、初始化View和获取数据,可以在BaseActivity中定义以下方法。initVariables():初始化变量,包括Intent带的数据和Activity内的变量。initViews():加载layout布局文件、初始化控件和为控件挂上事件方法。loadData():从服务器或本地获取数据。
(4)在执行OnDestory方法时,释放Activity使用的图片或视频等资源占据的内存。
(5)增加Activity到Activity列表,及从列表中移出Activity,方便Activity列表的管理。
(6)在执行OnPause方法时,保存数据到本地,防止APP的内存
被系统回收时数据丢失。
(7)在执行OnResume方法时,读取保存到本地的数据。
(8)当收到系统发出的内存不足的信号时,释放当前Activity使用的内存。对于各模块的Activity需要实现的方法,在基类中都定义成虚方法,强制子类实现。如果确实不需要实现,可以在子类定义空的方法体,这样可能会多写空方法,但可以强制开发人员必须实现相关方法,避免产生许多问题。示例代码如下:abstract class BaseActivity extends AppCompatActivity implements ComponentCallbacks2 { {     private String TAG = "BaseActivity";    @ Override     protected void onCreate( Bundle savedInstanceState) {         super. onCreate( savedInstanceState);
  if (getRequestedOrientation() != ActivityInfo. SCREEN_ ORIENTATION_ PORTRAIT) {             setRequestedOrientation( ActivityInfo. SCREEN_ ORIENTATION_ PORTRAIT);        }         ActivityList. addActivity( this);    }    @ Override     protected void onStart() {         super. onStart();         EamLog. v( TAG, "onStart");    }    @ Override     protected void onResume() {         super. onResume();         restoreData();         EamLog. v( TAG, "onResume");    }
 @ Override     protected void onPause() {         super. onPause();         saveData();         EamLog. v( TAG, "onPause");    }    @ Override     protected void onStop() {         super. onStop();         EamLog. v( TAG, "onStop");    }    @ Override     protected void onDestroy() {         releaseMemory( 0);         ActivityList. removeActivity( this);         super. onDestroy();
  EamLog. v( TAG, "onDestroy");    } /**     * Release memory when the UI becomes hidden or when system resources become low.     * @param level the memory- related event that was raised.     */     public void onTrimMemory( int level) {         releaseMemory( level);    }     abstract void initVariables();     abstract void initViews();     abstract void loadData();     abstract void saveData();     abstract void restoreData();     abstract void releaseMemory( int memoryLevel); }
好了,APP开发公司本文关于“APP项目设计关于BaseActivity步骤详解
”知识就分享到这里,谢谢关注,博纳网络编辑整理。
 

当前文章链接:/construction/appkaifa/2437.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。