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