Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法访问方法之外的selectedCategoryId值_Android - Fatal编程技术网

Android 无法访问方法之外的selectedCategoryId值

Android 无法访问方法之外的selectedCategoryId值,android,Android,我正在为select方法中定义的selectedCategoryId获取值,在另一个方法initCat中,为selectedCategoryId获取0值,是否有任何方法可以从同一类中的一个方法获取值,请帮助我 这是我的密码 package com.panaceasoft.myPack.fragments; public class BusinessRegisterFragment extends Fragment implements View.OnClickListener { pri

我正在为select方法中定义的selectedCategoryId获取值,在另一个方法initCat中,为selectedCategoryId获取0值,是否有任何方法可以从同一类中的一个方法获取值,请帮助我

这是我的密码

package com.panaceasoft.myPack.fragments;
public class BusinessRegisterFragment extends Fragment implements View.OnClickListener {
    private ArrayList < PCityData > cityArrayList;
    private ArrayList < PSubCategoryData > subCatArrayList;
    private ArrayList < PCityData > cityDataSet;

    public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        view = inflater.inflate(R.layout.fragment_business_register, container, false);

        initData();

        initUI();

        initCat();

        return view;
    }

    private void initData() {}

    public void initUI() {

        cityPopupContainer = (LinearLayout) view.findViewById(R.id.choose_city_container);
        cityPopupContainer.removeAllViews();

        catPopupContainer = (LinearLayout) view.findViewById(R.id.choose_cat_container);
        catPopupContainer.removeAllViews();

        subCatPopupContainer = (LinearLayout) view.findViewById(R.id.choose_sub_cat_container);
        subCatPopupContainer.removeAllViews();

        PPopupSingleSelectView pPopupSingleSelectView = new PPopupSingleSelectView(getActivity(), selectCategoryString, GlobalData.categoryDatas, "");
        pPopupSingleSelectView.setOnSelectListener(new SelectListener() {
            @Override
            public void Select(View view, int position, CharSequence text) {}

            @Override
            public void Select(View view, int position, CharSequence text, int id) {
                selectedCategoryId = id;
                selectedCategoryName = text.toString();
            }

            @Override
            public void Select(View view, int position, CharSequence text, int id, float additionalPrice) {}
        });
        catPopupContainer.addView(pPopupSingleSelectView);

        imageToUplaod.setOnClickListener(this);
        bUploadImage.setOnClickListener(this);
        bSelectImage.setOnClickListener(this);

        btnRegisterBusiness.setOnClickListener(new View.OnClickListener() {@
            Override
            public void onClick(View v) {
                InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(v.getWindowToken(), 0);

                doRegister();
            }
        });

        btnCancelBusiness.setOnClickListener(new View.OnClickListener() {@
            Override
            public void onClick(View v) {
                doCancel();
            }
        });

        prgDialog = new ProgressDialog(getActivity());
        prgDialog.setMessage("Please wait...");
        prgDialog.setCancelable(false);

    }
    private void initCat() {
        requestSubCategory(Config.APP_API + Config.GET_SUBCAT_BY_CAT + "?cat_id=" + selectedCategoryId);
    }
}
package com.panaceasoft.myPack.fragments;
公共类BusinessRegisterFragment扩展片段实现View.OnClickListener{
私人阵列列表城市阵列列表;
私有阵列列表子阵列列表;
私有数组列表cityDataSet;
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//为该碎片膨胀布局
视图=充气机。充气(R.layout.fragment\u business\u register,container,false);
initData();
initUI();
initCat();
返回视图;
}
私有void initData(){}
public void initUI(){
cityPopupContainer=(LinearLayout)view.findViewById(R.id.choose\u city\u container);
cityPopupContainer.removeAllViews();
catPopupContainer=(LinearLayout)view.findViewById(R.id.choose\u cat\u container);
catPopupContainer.removeAllViews();
subcatpopupccontainer=(LinearLayout)view.findViewById(R.id.choose\u sub\u cat\u container);
subCatPopupContainer.removeallview();
PPopupSingleSelectView PPopupSingleSelectView=新的PPopupSingleSelectView(getActivity(),selectCategoryString,GlobalData.categoryDatas,“”);
pPopupSingleSelectView.setOnSelectListener(新建SelectListener()){
@凌驾
public void Select(视图、int位置、字符序列文本){}
@凌驾
公共无效选择(视图、整型位置、字符序列文本、整型id){
selectedCategoryId=id;
selectedCategoryName=text.toString();
}
@凌驾
public void Select(视图、int位置、字符序列文本、int id、float additionalPrice){}
});
catPopupContainer.addView(pPopupSingleSelectView);
imageToUplaod.setOnClickListener(此);
bUploadImage.setOnClickListener(this);
bSelectImage.setOnClickListener(此);
btnRegisterBusiness.setOnClickListener(新视图.OnClickListener(){@
推翻
公共void onClick(视图v){
InputMethodManager imm=(InputMethodManager)getActivity().getSystemService(Context.INPUT\u方法\u服务);
imm.hideSoftInputFromWindow(v.getWindowToken(),0);
doRegister();
}
});
btnCancelBusiness.setOnClickListener(新视图.OnClickListener(){@
推翻
公共void onClick(视图v){
doCancel();
}
});
prgDialog=newprogressdialog(getActivity());
setMessage(“请稍候…”);
prgDialog.setCancelable(假);
}
私有void initCat(){
请求子类别(Config.APP_API+Config.GET_SUBCAT_BY_CAT+“?CAT_id=“+selectedCategoryId”);
}
}
试试这个

private void initCat(int catID) {
        requestSubCategory(Config.APP_API + Config.GET_SUBCAT_BY_CAT +"?cat_id="+catID);
}
并从
select()
方法调用

@Override
public void Select(View view, int position, CharSequence text, int id) {

    selectedCategoryId = id;
    selectedCategoryName = text.toString();
    initCat(id);

}

thanx bt抱歉,我认为我没有正确解释我的问题,我必须更新问题,在select方法中,我得到的值bt超出了在initCat()方法中,selectedCategoryId的值为0。您如何知道您得到的是
selectedCategoryId
?您是否尝试添加登录选择方法?在logcat中我显示它,但在那里看不到logcat。如果您在那里获得值,那么您必须获得超出该值的值。或者可能会在
select()
方法之前调用
initCat()
。选择值后,检查是否正在调用
initCat()
方法@我看不到更新后的答案。请将此简化为一个最小的示例。我们这里不需要整个项目,只想知道如何从一个方法到另一个方法获取变量值another@amit:我们只需要一个简单的例子。如果你懒得提出一个好问题,我们就懒得给出适当的回答。阅读,编辑你的问题,然后再回来。我尽可能少地更新了它