2016-07-19 13 views
-1

私はselectメソッドで定義されたselectedCategoryIdの値を取得しています。別のメソッドでは、initCatはselectedCategoryIdの値を0にしています。同じクラス、ここメソッドの外側でselectedCategoryIdの値にアクセスすることはできません

を私を助け、私のコードは

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); 
    } 
} 
+1

これを最小限の例に減らしてください。あなたのプロジェクト全体は必要ありません。 – Eiko

+0

あるメソッドから別のメソッドに変数値を取得する方法を知りたいだけです。 – amit

+0

@amit:最小限の例がほしいです。あなたが良い質問をするのを嫌うなら、私たちは適切な応答を与える気にしません。 http://stackoverflow.com/help/mcveを読み、質問を編集してから、やり直してください。 –

答えて

0

あるselect()からこの

private void initCat(int catID) { 
     requestSubCategory(Config.APP_API + Config.GET_SUBCAT_BY_CAT +"?cat_id="+catID); 
} 

と電話をしてみてください方法。

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

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

} 
+0

thanx bt申し訳ありません私は適切に私の質問を正しく説明しなかったと思う、私は選択メソッドのIMをinitCat()メソッドの外に値btを得る質問を更新しましたselectedCategoryIdの0値です – amit

+0

howあなたは 'selectedCategoryId'を取得していることを知っていますか?あなたはログイン方法を選択しようとしましたか? –

+0

logcatに表示すると、 – amit

関連する問題