Передача параметра другой активности - PullRequest
0 голосов
/ 12 марта 2012

Наверху моего кода

    package com.br.openeed.engtoolspro;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;

public class TubulaoDados extends Activity {

    // WIDGETS
    Spinner spTsolo;
    Button btCalcular;
    EditText etCarga, etMenorbase;
    TextView tvMenorbase, tvCm;

    // VARIABLES
    double valorCarga, valorTsolo, valorMenorbase, cargaKgf,
            verificacaoOblongada, verificacaoOblongada2, maiorBase, menorBase,
            areaFuste, diametroFuste, valorAlturabase, volumeBase;

У меня есть следующий метод, который вызывается после вычислений пользователя:

// Writes the results to other activity

    public void chamaResultados() {
        Intent ITubulaoDados = new Intent(TubulaoDados.this,
                TubulaoResultados.class);
        ITubulaoDados.putExtra("resultadoDiametrofuste", diametroFuste);
        startActivity(ITubulaoDados);
    }

В другой активности у меня есть:

    package com.br.openeed.engtoolspro;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class TubulaoResultados extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);

        setContentView(R.layout.tubulaoresultados);

        final TextView tvResultadofuste;
        Intent ITubulaoDados = getIntent();
        final String resultadoFuste;

        if (ITubulaoDados != null) {
            tvResultadofuste.setText(Double.parseDouble(diametroFuste));
            Log.i("TubulaoResultados","resultadoDiametrofuste" + diametroFuste);
        }
    }

}

Я не могу работать, я новичок и не понимаю, где неправильно, я думаю, что переменная, которую я создал в другой деятельности, не распознается в этом

Ответы [ 3 ]

3 голосов
/ 12 марта 2012

Попробуйте это,

Если diametroFuste является двойным,

double  diametroFuste = getIntent().getExtras().get("resultadoDiametrofuste");
tvResultadofuste.setText(""+diametroFuste);

Обновление:

В вашей TubulaoResultados Активности

final TextView tvResultadofuste = (TextView)findViewById(R.id.<textview's id mentioned in tubulaoresultados.xml file>);
Intent ITubulaoDados = getIntent();

if (ITubulaoDados != null) {
double  diametroFuste = ITubulaoDados.getExtras().get("resultadoDiametrofuste");
tvResultadofuste.setText(Double.toString(diametroFuste));
Log.i("TubulaoResultados","resultadoDiametrofuste" + diametroFuste);
}
0 голосов
/ 12 марта 2012

Просто попробуйте это работает

 double diametroFuste;
 Bundle extra=getIntent().getExtras();
 if(extra!=null){
    diametroFuste=extra.getDouble("resultadoDiametrofuste");
 }
0 голосов
/ 12 марта 2012

String strValue = getIntent.getExtras (). GetString ("resultadoDiametrofuste");

...