The code is very simply. There is an EditText on headerView and an EditText on footerView, make the items' height + headerView's height + footerView's height = the screen's height, after you click the EditText on HeaderView, then click the EditText on FooterView, the bug will appear. Anyone can help me explain the problem, I will appreciate it very much, thank you.
class MainActivity : AppCompatActivity() {
@SuppressLint("ClickableViewAccessibility")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val listView = findViewById<ListView>(R.id.listView)
listView.adapter = ArrayAdapter(this,
android.R.layout.simple_list_item_1,
arrayListOf("1", "2", "3", "4", "5", "6","1", "2", "3", "4", "5", "6"))
val headerView = LayoutInflater.from(this).inflate(R.layout.header, listView, false)
val etHeader = headerView.findViewById<EditText>(R.id.etComment)
listView.addHeaderView(headerView)
val footerView = LayoutInflater.from(this).inflate(R.layout.footer, listView, false)
val etFooter = footerView.findViewById<EditText>(R.id.etComment)
listView.addFooterView(footerView)
etHeader.setOnFocusChangeListener { v, hasFocus ->
Log.e("", "etHeader->setOnFocusChangeListener: $hasFocus")
}
etFooter.setOnFocusChangeListener { v, hasFocus ->
Log.e("", "etFooter->setOnFocusChangeListener: $hasFocus")
}
}
}
The whole code is here: https://github.com/tuchangwei/EditTextIssue.