| | |
| | | import android.support.annotation.Nullable; |
| | | import android.support.v4.app.Fragment; |
| | | import android.view.LayoutInflater; |
| | | import android.view.MotionEvent; |
| | | import android.view.View; |
| | | import android.view.ViewGroup; |
| | | import android.widget.EditText; |
| | | |
| | | import com.lidroid.xutils.ViewUtils; |
| | | |
| | | import cn.com.basic.face.util.KeyboardUtil; |
| | | |
| | | /** |
| | | * Created by zhangbo on 2017/2/15. |
| | |
| | | ViewGroup parent = (ViewGroup) this.view.getParent(); |
| | | parent.removeView(this.view); |
| | | } |
| | | ViewUtils.inject(this, this.view); |
| | | this.initViews(this.view, savedInstanceState); |
| | | this.initToolbar(savedInstanceState); |
| | | this.initListeners(); |
| | |
| | | |
| | | protected abstract int getLayoutId(); |
| | | |
| | | protected abstract void initViews(View view, Bundle savedInstanceState); |
| | | protected void initViews(View view, Bundle savedInstanceState) {}; |
| | | |
| | | protected void initToolbar(Bundle savedInstanceState){}; |
| | | |
| | | protected void initListeners() {}; |
| | | |
| | | protected void initData() {}; |
| | | |
| | | |
| | | |
| | | public void setupUI(View view) { |
| | | |
| | | // Set up touch listener for non-text box views to hide keyboard. |
| | | if (!(view instanceof EditText)) { |
| | | view.setOnTouchListener(new View.OnTouchListener() { |
| | | public boolean onTouch(View v, MotionEvent event) { |
| | | KeyboardUtil.hideSoftKeyboard(); |
| | | return false; |
| | | } |
| | | }); |
| | | } |
| | | //If a layout container, iterate over children and seed recursion. |
| | | if (view instanceof ViewGroup) { |
| | | for (int i = 0; i < ((ViewGroup) view).getChildCount(); i++) { |
| | | View innerView = ((ViewGroup) view).getChildAt(i); |
| | | setupUI(innerView); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |