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的推移改變一個TextView顯示此數據,但TextView的值保持爲「0」,這是即使我已經給它的默認值一個不同的值,例如6.
您確認'intent.putExtra( 「inchSnow」,inchSnow);'把正確的價值? – Szymon
我該如何驗證?我已經在程序中定義了雙'inchSnow'作爲值,但它從不出現在'ResultPost.Class'中。我知道'inchSnow'有一個與它相關的值,因爲我在片段中有一個'TextView',它顯示了用於測試目的的輸入值。 –
您是否嘗試瞭解代碼並檢查投入意圖的值? – Szymon