bug
陈力
2023-06-14 0fbbf8c20ece1586a119fd4accc962fe73b5b268
app/src/main/java/com/lotaai/canguiayw/ManageActivity.java
@@ -3,8 +3,10 @@
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.Window;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.LinearLayout;
@@ -30,14 +32,17 @@
    private LinearLayout mTabCunCan;
    private LinearLayout mTabOpenDoor;
    private LinearLayout mTabSelect;
    private LinearLayout mTabSetting;
    private Button mCunCanImg;
    private Button mOpenDoorImg;
    private Button mSelectImg;
    private Button mSettingImg;
    Fragment tab001;
    Fragment tab002;
    Fragment tab003;
    Fragment tabcuncan;
    Fragment tabOpenDoor;
    Fragment tabSelect;
    Fragment tabsetting;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
@@ -53,18 +58,22 @@
        mTabCunCan = (LinearLayout) findViewById(R.id.id_tab_cuncan);
        mTabOpenDoor = (LinearLayout) findViewById(R.id.id_tab_opendoor);
        mTabSelect = (LinearLayout) findViewById(R.id.id_tab_select);
        mTabSetting = (LinearLayout) findViewById(R.id.id_tab_setting);
        mCunCanImg =  findViewById(R.id.id_tab_cuncan_btn);
        mOpenDoorImg =  findViewById(R.id.id_tab_opendoor_btn);
        mSelectImg = findViewById(R.id.id_tab_select_btn);
        mSettingImg = findViewById(R.id.id_tab_setting_btn);
        tab001 = new CunCanFragment();
        tab002 = new OpenDoorFragment();
        tab003 = new SelectFragment();
        tabcuncan = new CunCanFragment();
        tabOpenDoor = new OpenDoorFragment();
        tabSelect = new SelectFragment();
        tabsetting = new SettingFragment();
        mFragments.add(tab001);
        mFragments.add(tab002);
        mFragments.add(tab003);
        mFragments.add(tabcuncan);
        mFragments.add(tabOpenDoor);
        mFragments.add(tabSelect);
        mFragments.add(tabsetting);
        mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) {
@@ -90,6 +99,7 @@
        mTabCunCan.setOnClickListener(this);
        mTabOpenDoor.setOnClickListener(this);
        mTabSelect.setOnClickListener(this);
        mTabSetting.setOnClickListener(this);
        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageSelected(int arg0) {
@@ -110,7 +120,10 @@
                        mSelectImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                        mSelectImg.setTextColor(Color.parseColor("#000000"));
                        break;
                    case 3:
                        mSettingImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                        mSettingImg.setTextColor(Color.parseColor("#000000"));
                        break;
                    default:
                        break;
                }
@@ -141,6 +154,9 @@
            case R.id.id_tab_select:
                setSelect(2);
                break;
            case R.id.id_tab_setting:
                setSelect(3);
                break;
            default:
                break;
        }
@@ -161,6 +177,10 @@
                mSelectImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                mSelectImg.setTextColor(Color.parseColor("#000000"));
                break;
            case 3:
                mSettingImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                mSettingImg.setTextColor(Color.parseColor("#000000"));
                break;
            default:
                break;
        }
@@ -176,6 +196,8 @@
        mOpenDoorImg.setTextColor(Color.parseColor("#ffffff"));
        mSelectImg.setBackgroundResource(R.drawable.tab_btn_normal);
        mSelectImg.setTextColor(Color.parseColor("#ffffff"));
        mSettingImg.setBackgroundResource(R.drawable.tab_btn_normal);
        mSettingImg.setTextColor(Color.parseColor("#ffffff"));
    }
    public void backMian(View view){
@@ -185,4 +207,37 @@
        finish();
    }
    public interface MyTouchListener {
        public void onTouchEvent(MotionEvent event);
    }
    // 保存MyTouchListener接口的列表
    private ArrayList<MyTouchListener> myTouchListeners = new ArrayList<ManageActivity.MyTouchListener>();
    /**
     * 提供给Fragment通过getActivity()方法来注册自己的触摸事件的方法
     * @param listener
     */
    public void registerMyTouchListener(MyTouchListener listener) {
        myTouchListeners.add(listener);
    }
    /**
     * 提供给Fragment通过getActivity()方法来取消注册自己的触摸事件的方法
     * @param listener
     */
    public void unRegisterMyTouchListener(MyTouchListener listener) {
        myTouchListeners.remove( listener );
    }
    /**
     * 分发触摸事件给所有注册了MyTouchListener的接口
     */
    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        for (MyTouchListener listener : myTouchListeners) {
            listener.onTouchEvent(ev);
        }
        return super.dispatchTouchEvent(ev);
    }
}