onCreate是指Android平台上几个组件的生命周期方法之一。
“activity.onCreate()”方法被多次调用是否正常
我在 Activity 的 onCreate 方法中有一些代码,并注意到它被调用了三次。这是正常行为吗?谢谢。
我们遇到了 Play Console 和 Firebase Crashlytics 上报告的大量 ANR。 两者的堆栈跟踪都指向 Google 地图中的同一类 MapView。 我正在分享圣...
空活动的 setContentView 上的 StrictMode 磁盘读取冲突
我最近尝试使用 StrictMode 但遇到了奇怪的违规,因此我尝试设置一个新的“空活动”项目(在 Android Studio 中)并添加了一个 Application 类,如下所示(如...中所述)
我可以从Application#onCreate()启动Service吗?
我想在从任何组件初始化我的应用程序时启动服务。 公共类 MyApplication 扩展应用程序 { @覆盖 公共无效 onCreate() { 超级.onCr...
将新的 TextView 添加到 ConstraintLayout 在 Create 时不起作用,但之后会起作用
我正在制作一个彩色 TextView 的动态网格来制作图块,因为它是动态的,所以我希望 gridSize 能够在运行时更改,我需要以编程方式进行。 问题...
一旦检测到跌倒,我就会尝试显示确认屏幕。如果检测到跌倒,我会调用“showConfirmation”,它遵循以下流程: 检测到跌倒时调用的方法: 公众号...
当我构建这个组件并将其放置在表单上时,一切看起来都很好。但是,当我运行该程序时,该控件会复制其所有子项。它似乎正在调用初始化组件...
Android 应用程序->onCreate() 重新打开应用程序时未调用
公共类 MyApplication 扩展应用程序{ @覆盖 公共无效 onCreate() { super.onCreate(); Log.d("*****:", "onCreate"); }} 公共类MainActivity扩展ActionBarActivity{ @
Activity 生命周期:一个新的 Activtiy 如何在创建之前出现在前台?
在这篇文章中,这个答案的以下段落让我感到困惑: 暂停(): 当一个活动进入后台时,作为活动生命周期的一部分被调用,但还没有...
点击SecondActivity左上角的后退按钮时MainActivity的SavedInstanceState为空
我正在为 Android 基础知识 02.2 开发一个实用的新应用程序: Android基础02.2:Activity生命周期和状态 请滑到网页底部,
第一次打开Activity或者销毁后使用app时,白屏几秒?
我的应用程序的聊天活动在它被销毁后继续显示一两秒的白屏,即使应用程序没有关闭。我试着把这一行: 我的应用程序的聊天活动在它被销毁后继续显示一两秒的白屏,即使应用程序没有关闭。我试着把这一行: <item name="android:statusBarColor">?attr/colorPrimaryVariant</item> 进入我的应用程序主题,但它不起作用。下面是我的 onCreate() 和 onStart() 方法。 如果有人可以帮助我提高启动性能,谢谢。 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityChatBinding.inflate(layoutInflater) setContentView(binding.root) when (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) { Configuration.UI_MODE_NIGHT_YES -> {} Configuration.UI_MODE_NIGHT_NO -> {} } //setSupportActionBar(chatToolbar) init() Handler().postDelayed({ init() }, 10) audioRecordView = AudioRecordView() audioRecordView.initView(findViewById<View>(R.id.layoutMain) as FrameLayout) val containerView = audioRecordView.setContainerView(R.layout.layout_chatting) record = layoutInflater.inflate(R.layout.record_view, null) audioRecordView.recordingListener = this uName = containerView?.findViewById(R.id.chatUserName)!! uImage = containerView.findViewById(R.id.chatUserImg)!! uPresence = containerView.findViewById(R.id.chatUserPresence) recyclerView = containerView.findViewById(R.id.recyclerViewMessages) addContacts() EmojiManager.install( GoogleCompatEmojiProvider( EmojiCompat.init( FontRequestEmojiCompatConfig( this, FontRequest( "com.google.android.gms.fonts", "com.google.android.gms", "Noto Color Emoji Compat", R.array.com_google_android_gms_fonts_certs, ) ).setReplaceAll(true) ) ) ) //EmojiManager.install(FacebookEmojiProvider()) //EmojiManager.install(TwitterEmojiProvider()) val rootView = findViewById<View>(R.id.layoutMain) emojiPopup = EmojiPopup(rootView, audioRecordView.messageView!!) if (emojiPopup.isShowing){ audioRecordView.emojiView?.setImageResource(R.drawable.ic_keyboard) } else { audioRecordView.emojiView?.setImageResource(R.drawable.emoji_ic) } //Record val filePath:String = externalCacheDir?.absolutePath + "/audioFile.wav" waveRecorder = WaveRecorder(filePath) waveRecorder.onStateChangeListener = { when (it) { RecorderState.RECORDING -> startRecording() RecorderState.STOP -> stopRecording() RecorderState.PAUSE -> pauseRecording() } } waveRecorder.onTimeElapsed = { Log.e(TAG, "onCreate: time elapsed $it") } //Chat messages = ArrayList() senderRoom = senderUid+receiverUid receiverRoom = receiverUid+senderUid setTxtDataToAdapter() //setImgDataToAdapter() setRecyclerView() //setListeners() setListener() //audioRecordView.messageView!!.requestFocus() val profileL = containerView.findViewById<View>(R.id.userImgNameL) val backBtn = containerView.findViewById<View>(R.id.single_ChatBack) profileL?.setOnClickListener{} backBtn?.setOnClickListener{ finish() } audioRecordView.setAttachmentOptions(AttachmentOption.defaultList, this) audioRecordView.removeAttachmentOptionAnimation(false) audioRecordView.removeAttachmentOptionAnimation(false) } `override fun onStart() { super.onStart() val currentId = FirebaseAuth.getInstance().uid val presence = hashMapOf<String, Any>("presence" to "Online") val state = hashMapOf<String, Any>("state" to "available") firestore.collection("Users").document(currentId!!).update(presence) firestore.collection("Contacts").document(userId).collection("rooms") .document(currentId).update(state) val seen = hashMapOf<String, Any>("seen" to "true") firestore.collection("Chats").document(senderRoom!!) .collection("messages").document().update(seen) firestore.collection("Chats").document(receiverRoom!!) .collection("messages").document().update(seen) }` 我试图将 init() 函数移动到后台线程,但它不起作用。 你调用了两次 init 函数;尝试删除一个,我认为您在使用以下代码时不会使用不同的后台线程: Handler().postDelayed({ init() }, 10) 因为它将在同一个当前线程上运行,所以尝试使用 Executors 或一些 Kotlin 协程! 您可以尝试的另一件事是将设置存在和已见状态的代码移动到 onResume() 方法而不是 onStart()。这将确保仅当活动对用户可见时才执行代码,这可能会缩短应用程序的启动时间。
RecyclerView 对象上的 setLayoutManager() 导致 onCreate() 崩溃
一切正常,直到我运行 recyclerViewMeals.setLayoutManager(layoutManager)。在调试模式下,该方法不会导致崩溃,但是一旦我跨过 onCreate() 的右括号...
如何在同一个活动中把spinner的选择值传递给onCreate()部分?
我想做一个应用程序,它收集的数据基于一些Edittexts和两个spinners。然后,通过点击一个按钮,在一个TextView中显示所有字符串数据。我知道这可能是简单的,但我不知道如何获得...。
于是我按照谷歌的第一个Android应用示例。如果我粘贴了发送按钮,它就打开了DisplayMessageActivity。但是当我从DisplayMessageActivity中粘贴后退按钮(左箭头)时, ...
我正在做一个安卓项目,我使用底部的导航栏与活动.当我点击导航栏按钮,它工作得非常好,但当我启动应用程序,它显示我... ...
如何将我的onViewCreated合并到同时包含布局片段和Viewpager的onCreateView中
我有一个viewPager,其中包含三个选项卡,即“聊天室”,“秘密聊天”和“聊天请求”。但是正如您所看到的,我不想在应用程序上进行秘密聊天并立即请求,因此我已经删除了那些...
如果我在活动A的onCreate中打开活动B,是否可以保证调用活动A的onResume()?对于所有操作系统版本?在任何情况下,活动B将打开,活动A停止,并且...
我有3个活动,并且所有活动都有一个ViewFlipper,其中有一些图像保持运行。事实是,我从SD卡加载了这些图像,大约有180张图像。每次...
访问onCreate函数中的onActivityResult返回的数据
[在Android / Kotlin中,我在onCreate函数中使用startActivityForResult启动一个新活动,并从onCreate ...之外的onActivityResult获取返回的变量(我们称它为X)]