Activity、Service和Fragment的生命周期
发表于|更新于
|总字数:77|阅读时长:1分钟|浏览量:
Activity的生命周期
Activity实例是由系统自动创建,并在不同的状态期间回调相应的方法。一个最简单的完整的Activity生命周期会按照如下顺序回调:onCreate -> onStart -> onResume -> onPause -> onStop -> onDestroy。
如下图所示:
未完成,施工中
文章作者: 丨小小丶
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Hexo!
相关推荐
2021-04-05
leancloud获取ErrorCode方法
在开发中不应该直接把ErrorMessage提示给用户,可以通过获取ErrorCode经过处理后提示给用户。 AVException avException = new AVException(e); int code = avException.getCode(); JSONObject errorcode = new JSONObject(); try { errorcode.put("code",code); errorcode.put("message",e.getMessage()); switch (errorcode.getInt("code")){ //在这里写处理errorcode的方法 } } catch (JSONException jsonException) { ...
2021-07-17
实例化ViewModel的简单方法
实例化ViewModel 新建一个ViewModel为MainViewModel,旧的实例化ViewModel方法为 val mainViewModel = ViewModelProvider(this, ViewModelProvider.NewInstanceFactort()).get(MainViewModel::class.java) 新方法需要导入一个fragment-ktx扩展,在dependencies下添加implementation("androidx.fragment:fragment-ktx:$version")即可 在实例化ViewModel时的代码为 val myViewModel by viewModels<MainViewModel>() 创建能在后台被杀死时仍保存数据的ViewModel 在viewModel中添加savedStateHandle参数即可 class MainViewModel(private val savedStateHandler: SavedState...
2021-07-12
Android程序按home键回到后台,点击桌面图标,当前页面退出回到启动页的问题
原因当点击桌面应用图标时,会重新启动app,启动新的堆栈,清除之前的堆栈,所以之前开启的页面都会被清除 解决方法在启动页面的onCreate()中加入 if((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0){ finish(); return; } 发现启动页再次启动后,立即执行Destroy方法,并使用return阻止后续的操作,便可以保留当前页面的显示状态。
2021-10-05
Room使用例
因实例化room消耗极大,因此调用room时应使用单例模式。 首先创建一个抽象类继承与RoomDatabase,并在其中指定model文件及数据库版本。 在java中需要加入exportSchema = false,而在kotlin中不用添加 @Database(entities = {LoginInfo.Data.class}, version = 1, exportSchema = false)public abstract class LoginInfoDatabase extends RoomDatabase { public abstract LoginInfoDao loginInfoDao();} 创建一个接口就可以在其中实现增删改查方法,在此接口前需添加@Dao以指定其为数据库的Dao @Daopublic interface LoginInfoDao { // 登录时插入保存登录数据 @Insert void insertLoginInfo(Log...
2022-03-28
android unity混合开发
unity配置 创建一个3D mobile项目,在File-Build Settings中勾选Export Project,会出现Export按钮,点击即可导出unity工程作为Android工程的module Android配置 在settings.gradle中添加: include ':unityLibrary'project(':unityLibrary').projectDir=new File('unity导出地址\\unityLibrary') 在Project的build.gradle的repositories下添加: flatDir { dirs "${project(':unityLibrary').projectDir}/libs"} 在使用到unity的module依赖中添加: implementation project(':unityLibrary'...
2021-05-26
Switch控件过时处理方法
在使用Switch控件时,Android Studio警告Warning : Use SwitchCompat from AppCompat or SwitchMaterial from Material library 应该使用SwitchCompat或者是SwitchMaterial 来代替Switch控件 以下xml为SwitchMaterial <com.google.android.material.switchmaterial.SwitchMaterial android:id="@+id/finish_entry_sw" android:layout_width="wrap_content" android:layout_height="match_parent" android:checked="false" android:enabled="true" /> SwitchCompat和SwitchMaterial为旧Sw...
