0

以前のアクティビティで提供されたパラメーターを取得しようとしています。パラメーターの数は固定されておらず、私のメソッドはそれらすべて (1 から n) を読み取ることができるはずです。パラメータの数は、パラメータ n_inputs によって指定されます。次のコードで実行しようとしましたが、これはコンパイラによって正しいですが、いくつかの問題があり、どこにあるのかわかりません...配列 param[ ] に関連するものに違いないと思います。私を手伝ってくれますか??

    double params[];    
int n_inputs;   

@Override
protected void onCreate(Bundle savedInstanceState) 
{

    //I'm gonna get the parameters from the previous activity
    Bundle b = getIntent().getExtras();
    //here I get the number of inputs from the previous activity
    n_inputs = b.getInt("ninputs");
    // I create a new array with dimension "i_inputs"
    params= new double[n_inputs];
    if(n_inputs>0)
    {
        for (int i=0;i<n_inputs;i++)
        {
            params[i] = b.getDouble("param"+(i+1));
        }
    }


    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity);      

    //Now I try to show the parameters in a toast       
    Context context = getApplicationContext();
    CharSequence text = "parameter 1 "+params[0] +" param 2 "+ params[1] ;
    int duration = Toast.LENGTH_SHORT;
    Toast toast = Toast.makeText(context, text, duration);
    toast.show();
}

どうもありがとうございました!!

4

1 に答える 1

2

Bundle.putDoubleArray()を使用できますが、 Bundle.getDoubleArray()はとにかく簡単になります。

于 2013-05-25T09:06:35.240 に答える