`
iaiai
  • 浏览: 2196648 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于Android创建Activity需要注意的地方

 
阅读更多
1.在onCreate()中加载UI,在onStart()/onResume()中刷新UI
2.在onCreate()中用Handler延时请求数据,数据处理最好是二次callback回调(第一次来自DB,第二次来自网络)
3.在Activity中尽量少创建Handler,创建一个UIHandler,一个后台HandlerThread足以
4.所有异步任务写进一个Runnable中,用自己写的应用后台线程池统一处理,而不是在Activity中直接new Thread()
5.异步Runnable也可以交由HandlerThread处理,不过注意其回调顺序性和延迟性,再次提醒尽量不要new Thread()
6.Activity结束的时候尽量手动释放资源,最好销毁UIHandler和HandlerThread.
7.尽量少用Adapter的NotifyDataSetChange()
8.如果实在要用Thread也要用AsyncThread取代new Thread()
分享到:
评论

相关推荐

    android实现activity直接的传值问题

    如果数据需要全局访问,可以创建自定义Application类或BaseActivity,将数据作为成员变量保存,然后在需要的地方进行读取。但这同样需要注意内存泄漏的问题。 七、EventBus和RxJava 对于复杂的事件传递,可以借助...

    android多个activity和一个service通信

    Service的声明通常在AndroidManifest.xml文件中完成,然后在需要启动Service的地方调用Context.startService()或Context.bindService()方法。startService()用于一次性任务,而bindService()则用于需要与Service保持...

    android中设置activity的出现方式

    其次,场景过渡(Transition)是Android 5.0(Lollipop)引入的新特性,允许开发者在两个不同的布局或Activity之间创建平滑的动画。可以使用`ActivityOptions.makeSceneTransitionAnimation()`方法来创建过渡,并在...

    android 创建应用快捷方式

    2. 创建快捷方式:在需要创建快捷方式的地方,使用`ShortcutManager`的`addDynamicShortcuts()`或`addStaticShortcuts()`方法。下面是一个创建动态快捷方式的例子: ```java ShortcutManager shortcutManager = ...

    android关闭全部activity

    1. **记录所有Activity**:首先,我们需要一个全局的地方来记录所有的Activity实例。通常,我们会选择`Application`类或者一个单例模式的类来实现这一点。 2. **定义广播接收器**:通过广播接收器来监听特定的广播...

    android面试_关于Activity.pdf

    当Activity创建时,`onCreate()`方法首先被调用,这里是进行界面布局初始化和数据加载的地方。接着,`onStart()`使得Activity变得对用户可见,但不接收用户输入。当Activity完全处于前台并与用户交互时,`onResume()...

    android activity跳转 Application Context实现共享数据

    在Android应用开发中,Activity是用户界面的主要载体,而Context则是Android系统中的核心组件,它提供了与应用程序环境交互的能力。当我们需要在多个Activity之间传递数据时,通常会使用Intent对象,而通过...

    Android将Activity打包成jar包供第三方调用

    1. **创建单独的模块**:首先,你需要在Android Studio中创建一个新的Android Library项目,这个项目仅包含需要打包的Activity以及相关的资源文件。 2. **编写MResource类**:MResource类是核心工具,用于通过资源...

    Android使用DrawerLayout创建左右两个抽屉菜单

    最后,为了使抽屉菜单可通过手势或菜单按钮触发,我们需要在Activity的`onOptionsItemSelected`方法中处理: ```java @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == ...

    09-01 rxbus从第二个activity发送消息给第一个activity,并后台更新第一个activity的UI

    在Android应用开发中,有时我们需要在不同的组件之间传递数据或者事件,这通常可以通过Intent、BroadcastReceiver、Handler等机制实现。然而,在现代Android开发中,RxBus(Reactive Bus)作为一种基于RxJava的事件...

    android中以广播的形式销毁栈中的activity

    在Android系统中,Activity是应用程序的基本组件之一,用于与用户交互。当用户操作或系统需要时,Activity会经历一系列生命周期状态变化。有时,我们可能需要在特定条件下通过非直接方式,比如广播,来销毁栈中的...

    android 创建全局实例

    本篇文章将详细讲解如何在Android中创建一个全局应用实例,并讨论相关的注意事项。 首先,我们需要创建一个自定义的`Application`类。在Android系统启动时,会先创建这个自定义的`Application`实例,然后才创建各个...

    Service与多个Activity交互

    1. **创建BroadcastReceiver:** 在Activity或Service中定义BroadcastReceiver,并重写onReceive()方法来处理接收到的广播。 2. **注册BroadcastReceiver:** 在需要接收广播的地方注册BroadcastReceiver,可以在...

    android实现悬浮窗功能,无需权限

    需要注意的是,尽管`TYPE_TOAST`类型的窗口在大部分设备上都可以正常工作,但某些定制的Android ROM(如MIUI、锤子OS、Flyme等)可能会有自己的限制,可能需要额外的适配工作。此外,对于Android 8.0及以上版本,...

    Android使用Activity实现从底部弹出菜单或窗口的方法

    注意,这个方法适用于简单的弹出菜单,如果需要更复杂的交互或动画效果,可能需要使用`PopupWindow`或其他组件。总的来说,理解Android的布局、Activity生命周期以及样式设置是实现此类功能的关键。

    Android 界面禁止左右滑动切换

    在`Activity`或`Fragment`中创建`GestureDetector`实例,然后在`onTouchEvent`方法中检测滑动手势并处理。 ```java GestureDetector gestureDetector = new GestureDetector(context, new GestureDetector....

    android Activity布局初步(三)- 相对布局

    在Android应用开发中,Activity是用户界面的基本单元,它负责展示UI并处理用户交互。本篇文章将深入探讨相对布局(RelativeLayout)在Android中的使用,这是一种常见的布局方式,允许控件根据彼此的位置进行相对定位...

    Android实现菜单、弹出框、Activity带值例子

    在Android应用开发中,菜单(Menu)、弹出框(Dialog)和Activity之间的数据传递是至关重要的组成部分,它们极大地丰富了用户界面的交互性。本文将详细介绍如何在Android中实现这些功能,并提供一个可运行的实例。 ...

    Android项目实战--手机卫士05--自定义对话框与拨打电话来启动activity

    3. 显示对话框:在需要显示对话框的地方,实例化自定义对话框类,并调用`show()`方法。注意管理对话框的生命周期,确保在适当的时候关闭它,防止内存泄漏。 接下来,我们讨论如何实现拨打电话来启动Activity。在...

Global site tag (gtag.js) - Google Analytics