如何将焦点状态传递给View的父级?

时间:2016-03-18 04:53:27

标签: android android-layout

视图如何检测其子视图的焦点状态?正如你在这张照片中看到的那样。 enter image description here

父视图是带有子视图LinearLayout的{​​{1}}。我想在焦点状态改变时更改UI(如果专注于edittext,linearlayout会变为红色)。但只有EditText可以检测焦点状态,而EditText则不能。因为我可以使用LinearLayout倾听EditText的状态。但我不满足于此。有一种简单的方法可以让父视图获得子视图的焦点事件吗?表格有很多项目。

1 个答案:

答案 0 :(得分:-1)

我也认为除了

之外别无其他方法
onfocusChangeListner

如果您有很多edittext,那么您只需使用参数创建一个方法,并在其中只编写一个onfocuschangeListner这样的

public void setColorToEditText(EditText editText) {
    editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        public void onFocusChange(View v, boolean hasFocus) {
            Log.e("userFocu", "userFocu");
            if (!hasFocus) {
                // code to execute when EditText loses focus

            }
        }
 });