onCreateView()中的调用方法

时间:2016-02-15 12:31:39

标签: android android-fragments android-edittext

嗨,我是片段新手,我正在处理这个活动。我填充了一个编辑文本,但我想在用户专注于其中一个编辑文本时突出显示边框。我创建了方法焦点,我正在调用它,但它没有用。

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public class Fragment_Info extends Fragment {

EditText CompanyName;
EditText CompanyOwner;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.activity_fragment__info, container, false);

    CompanyName = (EditText) view.findViewById(R.id.CompName);
    CompanyOwner = (EditText) view.findViewById(R.id.CompOwner);
    focus(CompanyName);
    focus(CompanyOwner);

    //Inflate the layout for this fragment
    return inflater.inflate(R.layout.activity_fragment__info, container, false);
}

public void focus(View view){
    view.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            if(hasFocus)
                v.setBackgroundResource(R.drawable.focus_border_style);
            else
                v.setBackgroundResource(R.color.colorPrimary);
        }
    });
}
}

2 个答案:

答案 0 :(得分:2)

您正在将焦点应用于视图并从该方法返回不同的视图。

更改

return inflater.inflate(R.layout.activity_fragment__info, container, false);

return view;

答案 1 :(得分:1)

更改

   return inflater.inflate(R.layout.activity_fragment__info, container, false);

return view;