我有两个带有两个EditText的片段,我希望将焦点放在第二个EditText(片段二)上,当我从第一个EditText聚焦时从片段1更改为片段二。我有一个focuschangelistener控制第一个EditText焦点,但我不知道如何在片段更改时检查第一个EditText焦点,因为它总是在第二个片段上返回false(我认为片段视图清除了对分离的焦点)。
现在我在片段创建视图上有一个焦点监听器:
etEmail?.setOnFocusChangeListener { v, hasFocus ->
(activity as SessionActivity).animation() //this is an animation
isFocused = hasFocus //this is my bool status check
}
在第二个片段中,我打电话给同伴检查状态:
Log.d("FOCUS", hadFocus.toString())
答案 0 :(得分:0)
在onResume中使用它:
onResume(){
super.onResume();
findViewById(R.id.SecondEditText).requestFocuse();
}
最好在onCreate
中查找视图并将其保存在实例变量中,然后在requestFocuse
中的该变量上调用onResume
,以便在onResume
中每次都删除查找视图的延迟特别是在onResume
调用每个窗口大小的多窗口上