0

あるアクティビティから別のアクティビティに値を送信したいのですが、2 番目のアクティビティで null を取得しました。問題を解決してください。最初のアクティビティには blog_info が含まれています。そのブログの詳細は、これらの値に基づいて 2 番目のアクティビティに送信されます。

final ArrayList<Blog> blogList = (ArrayList<Blog>) message
                .getResultList("Blog");
        for (Blog blog : blogList) {
            int i=0;
                latitude_Array[i] = Double.parseDouble(blog.getLatitude_zzs());
                longitude_Array[i]=Double.parseDouble(blog.getLongitude_zzs());
                i++;
        }
        btn = (Button) findViewById(R.id.main_top_map_list);
        btn.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,
                            MainActivity_MapList.class);
                    //The method putDoubleArray(String, double[]) in the type Bundle is not applicable for the arguments (String, Double[])
                    bundle.putDoubleArray("latitude_Array", latitude_Array);

                    // intent.putExtras(bundle);
                    finish();
                    startActivity(intent);
            }
        });

私は次のような一連の方法を使用しました:

bundle.putDoubleArray(キー、値)

bundle.putSparseParcelableArray(キー、値)

bundle.putParcelableArray(キー、値)

bundle.putSerializable(キー、値)

しかし、2番目のアクティビティで「null」または「0.0」を取得します。

4

1 に答える 1

1

最初に、投稿したコードで、doubleのリストの配列リストを配置しますが、次にそれを?の配列リストにキャストします。区画を拡張します。それらは同じタイプではありません。

doubleのリスト(または配列)を渡したいだけだと思います。putDoubleArray()またはを使用できますputSerializable()。ダブルスの配列を処理する場合は、ダブルスを次のように配置する必要がありますdouble[]

double[] doubles = ...; // whatever
bundle.putDoubleArray(key, doubles);

それらを反対側に出すために、

double[] doubles = bundle.getDoubleArray(key);

配列リストでdoubleを渡したい場合は、doubleをArrayList<? implements Serializable>...に含める必要があります。例:ArrayList<Double>。このような、

ArrayList<Double> doubles = ...; // whatever
bundle.putSerializable(key, doubles);

反対側のバンドルからそれらを取り出すために、

ArrayList<Double> doubles = (ArrayList<Double>)bundle.getSerializableExtra(key);
于 2012-07-25T01:26:57.203 に答える