2

탭이 2 개인 탭 레이아웃이 있습니다. 각 탭은 52.363과 같은 이중 형식으로 일부 데이터를 수집 할 수 있습니다. 탭 중 하나에서 버튼을 누르면 이전 탭에서 입력 한 숫자를 표시하는 새로운 활동이 열립니다. 그러나 제출 버튼을 누르면 값이 표시되지 않습니다. 왜 어떤 아이디어? ,조각과 활동 사이에 값이 전달되지 않습니다.

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view; 
     view = inflater.inflate(R.layout.advfrag_layout, container, false); 
     return view; 
    } 

@Override 
public void onActivityCreated(Bundle savedInstanceState) { 
    super.onActivityCreated(savedInstanceState); 

    inSnow = (EditText) getView().findViewById(R.id.inchesSnow); 
    calc = (Button) getView().findViewById(R.id.button); 
    results = (TextView) getView().findViewById(R.id.resultView); 
    calc.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        try{ 
         inchSnow = Double.parseDouble(inSnow.getText().toString()); 
        }catch (NumberFormatException ex){ 
         results.setText("Field Blank!"); 

        } 
       Intent intent = new Intent(getActivity().getBaseContext(), ResultPost.class); 
       intent.putExtra("inchSnow", inchSnow); 
       getActivity().startActivity(intent); 
     } 
    }); 

} 

데이터 (다시 ResultPost.Class로 전송되는 활동

조각 탭 코드 (두 탭은 또한 지금은 자명 탈락되어있는 부분 같다) 유일한 필수 부품) :

public class ResultPost extends ActionBarActivity { 

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_result_post); 
     AdvancedFragment advancedFragment= new AdvancedFragment(); 

     Intent intent = getIntent(); 
     double inchesn = intent.getDoubleExtra("inchSnow", 0); 
    } 
} 

ResultPost.Class이 지남에이 데이터를 표시하는 텍스트 뷰를 변경할 수 있지만, 텍스트 뷰의 값은 내가 그것을 주어진 경우에도 기본 값이 "0", 유지 다른 값, 예 : 6

+0

당신은'intent.putExtra ("inchSnow", inchSnow) 것을 확인했습니다;'올바른 값을 넣는다? – Szymon

+0

어떻게 확인할 수 있습니까? 나는 프로그램에서 double'inchSnow'를 값으로 정의 하였지만'ResultPost.Class'에는 절대로 나타나지 않습니다. 필자는 테스트를 위해 입력 값을 보여주는 조각에'TextView'를 가지고 있기 때문에'inchSnow'에 값이 연관되어 있음을 알고 있습니다. –

+0

코드를 단계별로 실행하고 값을 의도로 확인 했습니까? – Szymon

답변

0

다음과 같이하십시오 :

public class ResultPost extends ActionBarActivity { 

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_result_post); 
     AdvancedFragment advancedFragment= new AdvancedFragment(); 

     Intent intent = getIntent(); 
     double inchesn = intent.getDoubleExtra("inchSnow",0.0); 
    } 
} 
관련 문제