android - 将字符串从 onClickListener insde onCreate 传递到外部 onCreate
问题描述
对不起,但我有一些直到现在我不明白,我在一个小应用程序中工作,我需要String
从setOnClickListener
内部传递一个onCreate
然后在同一个活动中将此变量传递到外部onCreate
,字符串是finalDeRec1
....请找到编码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rectangular_duct);
//Balance code
mbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
double airFlowCal = Double.parseDouble(airFlow.getText().toString());
double widthRec = Double.parseDouble(recWidthMm.getText().toString());
double HeightRec = Double.parseDouble(recHeightMm.getText().toString());
double finalDe = calculateDe(widthRec, HeightRec);
String finalDeRec1 = String.valueOf((String.format("%.2f",finalDe)));
//Balance code
});
}
//outside onCreate
private void createPDF() {
printRec.setOnClickListener(new View.OnClickListener() {
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
public void onClick(View v) {
PdfDocument myPdfDocument = new PdfDocument();
//Balance Code
});
}
}
请指教
解决方案
为什么不在 oncreate 方法之外创建一个全局变量并将值放入其中。
String value = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rectangular_duct);
mbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
double airFlowCal = Double.parseDouble(airFlow.getText().toString());
double widthRec = Double.parseDouble(recWidthMm.getText().toString());
double HeightRec = Double.parseDouble(recHeightMm.getText().toString());
double finalDe = calculateDe(widthRec, HeightRec);
String finalDeRec1 = String.valueOf((String.format("%.2f",finalDe)));
value = finalDeRec1;
});
}
private void createPDF() {
printRec.setOnClickListener(new View.OnClickListener() {
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
public void onClick(View v) {
PdfDocument myPdfDocument = new PdfDocument();
String yourStringIsHere = value;
});
}
}
只需在 onCreate 方法之外添加一个字符串,然后在 oncCickListener 中分配它。然后在 onCreate 方法之外使用它。
推荐阅读
- python - 使用 bottle-jwt 装饰器的麻烦(不起作用)
- javascript - angular-chart.js:如何在图表中使用来自变量的动态数据而不是静态值?
- r - R 不会将值作为数字导入
- react-native - 如何从 FlatList 中的存储中删除项目?
- python - 不希望用户输入数字时 Input() 函数出现问题
- mysql - mysql存储函数case语句
- voice-recognition - 对于具有 3 秒长度的音频样本,最佳窗口大小(以秒为单位)和跳跃大小(以秒为单位)是多少?
- python - Python脚本在不同的行停止并且不抛出异常
- c++ - GCC 模板推导消除了 const 错误?
- jquery - JQuery Mapael 在错误位置显示工具提示