کلیدستان

نسخه‌ی کامل: مشکل در نمایش اطلاعات ارسالی در لیست ویو
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
با سلام خدمت دوستان
من به لیست دارم که چند چک باکس داره . کاربر یه چن تا رو انتخاب میکنه و دکمه رو میزنه. با زدن دکمه به اکتیوتی بعدی میره و چک لیست های انتخاب شده در لیست ویو نشون میده . تا اینجای کار مشکلی نیست و حالا میخوام این لیست ویو در اکتیویتی دوم سفارشی باشه و مقادیر ارسالی رو با عکس نشون بده . لطفا در این خصوص راهنمایی بفرمایید .
کدها به صورت زیر میباشد :

کد:
import java.util.ArrayList;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.SparseBooleanArray;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;


public class ListViewMultipleSelectionActivity extends Activity implements
       OnClickListener {

   Button               button;
   ListView             listView;
   ArrayAdapter<String> adapter;


   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);

       findViewsById();

       String[] sports = getResources().getStringArray(R.array.sports_array);
       adapter = new ArrayAdapter<String>(this,
               android.R.layout.simple_list_item_multiple_choice, sports);
       listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
       listView.setAdapter(adapter);

       button.setOnClickListener(this);
   }


   private void findViewsById() {
       listView = (ListView) findViewById(R.id.list);
       button = (Button) findViewById(R.id.testbutton);
   }


   @Override
   public void onClick(View v) {
       SparseBooleanArray checked = listView.getCheckedItemPositions();
       ArrayList<String> selectedItems = new ArrayList<String>();
       for (int i = 0; i < checked.size(); i++) {
           // Item position in adapter
           int position = checked.keyAt(i);
           // Add sport if it is checked i.e.) == TRUE!
           if (checked.valueAt(i))
               selectedItems.add(adapter.getItem(position));
       }

       String[] outputStrArr = new String[selectedItems.size()];

       for (int i = 0; i < selectedItems.size(); i++) {
           outputStrArr[i] = selectedItems.get(i);
       }

       Intent intent = new Intent(getApplicationContext(),
               ResultActivity.class);

       // Create a bundle object
       Bundle b = new Bundle();
       b.putStringArray("selectedItems", outputStrArr);

       // Add the bundle to the intent.
       intent.putExtras(b);

       // start the ResultActivity
       startActivity(intent);
   }
}


اکتیوتی دوم
کد:
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;


public class ResultActivity extends Activity {
ListView lv;
 

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.result);

     

       Bundle b = getIntent().getExtras();
       String[] resultArr = b.getStringArray("selectedItems");
       
       lv = (ListView) findViewById(R.id.outputList);

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

       lv.setAdapter(adapter);
   }
}