鍍金池/ 問答/Java  Android/ Fragment獲取其他View的CheckBox狀態(tài)一直為False

Fragment獲取其他View的CheckBox狀態(tài)一直為False

請教各位大佬,我在某個Fragment里定義了以下代碼:

DetailActivity = (DetailActivity) getActivity();
LayoutInflater factorys = LayoutInflater.from(DetailActivity);
View view= factorys.inflate(R.layout.activity_detail, null);
killswitch = (CheckBox) view.findViewById(R.id.killswitch);
inputTv = (EditText) root.findViewById(R.id.inputTv);

并且已經(jīng)在DetailActivity以及View里定義和監(jiān)聽了這兩個CheckBox、EditText

killswitch = (CheckBox) findViewById(R.id.killswitch);
inputTv = (EditText) findViewById(R.id.inputTv);
        killswitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){
            @Override
            public void onCheckedChanged(CompoundButton buttonView,
                                         boolean isChecked) {
                // TODO Auto-generated method stub
                if(isChecked){
                    inputTv.setText("1");
                    Log.e("kill:", "onCheckedChanged: 選中" );
                }else{
                    inputTv.setText("0");
                    Log.e("kill:", "onCheckedChanged: 未選中");
                }
            }
        });

在DetailActivity中,獲取killswitch的狀態(tài)和inputTv值完全正常

但是在某個Fragment里使用貼出的第一段代碼,只可以獲取到最初的這兩個值,例如我view里默認CheckBox為false、inputTv為1(已試過去掉初始值),然CheckBox動態(tài)點擊之后,F(xiàn)ragment里的獲取inputTv、CheckBox仍然為初始值。
DetailActivity里為最新點擊動態(tài)的賦值。(Fragment調(diào)用是通過其他按鈕)

回答
編輯回答
局外人
View view= factorys.inflate(R.layout.activity_detail, null); 

這個 Fragment 的 View 是新創(chuàng)建的跟 Activity 中的都不是同一個對象。

2018年3月1日 18:09