0

あるアクティビティから別のアクティビティへの項目として、都市名のチェックボックスを含むリストビューを渡そうとしています。チェックされた都市を StringBuilder で正常に取得しています。問題は、stringbuilder オブジェクトをあるアクティビティから別のアクティビティに転送しようとしたときに発生します。どんな助けでも大歓迎です..

Java ファイル:

public class TailoredtwoActivity extends Activity implements OnItemClickListener, OnClickListener{

    StringBuilder builder;
    Button btn1;
    ListView mListView;
    String[] array = new String[] {"Ham", "Turkey", "Bread"};

    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tailoredtwo);

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_checked, array);

        mListView = (ListView) findViewById(R.id.listViewcity);
        mListView.setAdapter(adapter);
        mListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

        Button button = (Button) findViewById(R.id.btn_tailortwo_submit);
        button.setOnClickListener(this);
    }

    public void onClick(View view) {
        SparseBooleanArray positions = mListView.getCheckedItemPositions();
        builder = new StringBuilder();
        for(int index = 0; index < array.length; index++) {
            if(positions.get(index)==true)
            {
                builder.append(array[index]);
                builder.append(" ");
            }
        }
        Intent i1 = new Intent(this, TailoredthreeActivity.class);
        i1.putExtra(android.content.Intent.EXTRA_TEXT, builder);
        startActivity(i1);
    }


    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        // TODO Auto-generated method stub

    }
}
4

1 に答える 1

1

全体を渡す代わりに、 が保持StringBuilderする文字列を渡すことができStringBuilderます。もう一方はそれをActivity取得しStringて新しいものを作成しStringBuilderます

StringBuilder stringBuilder = new StringBuilder(currentString);
于 2013-07-11T12:41:58.947 に答える