Как добавить значение, полученное из oneActivity в другой деятельности в Android - PullRequest
0 голосов
/ 13 января 2012

у меня есть два действия в этом, я беру пиксели изображения из одного действия и передаю это значение следующему действию и сохраняю его в текстовом представлении как String.AND Когда я беру значение следующего пикселя и передаю второму действию более раннее значение в текстовом представлении заменяется новым значением пикселя. Теперь мне нужно добавить текущее значение к предыдущему значению. Я покажу вам мой код для дополнительной спецификации

/// Selectpassword.java (где я получаю поля изображений)

public class Selectpassword extends Activity {
/** Called when the activity is first created. */
Bitmap overlay;      
Paint pTouch;
int X = -100;
int Y = -100;
Canvas c2;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Intent mIntent = getIntent();
    int intValue = mIntent.getIntExtra("intVariableName", 0);
    System.out.println("+++++++++++++++++++++"+intValue);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    requestWindowFeature(Window.FEATURE_NO_TITLE);

    Bitmap mBitmap = BitmapFactory.decodeResource(getResources(),intValue);
    Bitmap mBitmapover = BitmapFactory.decodeResource(getResources(), intValue);
    overlay = BitmapFactory.decodeResource(getResources(),intValue).copy(Config.ARGB_8888, true);  
    c2 = new Canvas(overlay);

    pTouch = new Paint(Paint.ANTI_ALIAS_FLAG);         
  //  pTouch.setXfermode(new PorterDuffXfermode(Mode.TARGET); 
    pTouch.setColor(Color.TRANSPARENT);
    pTouch.setMaskFilter(new BlurMaskFilter(15, Blur.NORMAL));
    setContentView(new BitMapView(this, mBitmap,mBitmapover));
}

class BitMapView extends View {
    Bitmap mBitmap = null;
    Bitmap mBitmapover = null;

    public BitMapView(Context context, Bitmap bm, Bitmap bmover) {
    super(context);
    mBitmap = bm;
    mBitmapover = bmover;
    }
     @Override
     public boolean onTouchEvent(MotionEvent ev) {

         switch (ev.getAction()) {

             case MotionEvent.ACTION_DOWN: {

                 X = (int) ev.getX();
                 Y = (int) ev.getY();


                 System.out.println("+++++++++++++++++++++++++++++"+X);
                 System.out.println("+++++++++++++++++++++++++++++"+Y);
                 invalidate();
                 Intent intent = new Intent(Selectpassword.this,Catogry.class); 
                 intent.putExtra("intVariableName", X);//i put the value of the pixels
                // intent.putExtra("intVariableName", Y);
                 startActivity(intent);

                 break;
             }

             case MotionEvent.ACTION_MOVE: {

                     X = (int) ev.getX();
                     Y = (int) ev.getY();
                     invalidate();
                     break;

             }           

             case MotionEvent.ACTION_UP:

                 break;

         }
         return true;
     }


    @Override
    protected void onDraw(Canvas canvas) {
    // called when view is drawn
    Paint paint = new Paint();
    paint.setFilterBitmap(true);


    //draw background
    canvas.drawBitmap(mBitmap, 0, 0, null);
    //copy the default overlay into temporary overlay and punch a hole in it                          
    c2.drawBitmap(mBitmapover, 0, 0, null); //exclude this line to show all as you draw
    c2.drawCircle(X, Y, 80, pTouch);
    //draw the overlay over the background  
    canvas.drawBitmap(overlay, 0, 0, null);
    }
}

  }

// Catogry.java (где я добавляю пиксели в текстовом представлении)

public class Catogry extends Activity {

 LinearLayout background;
 Spinner spinnerColor;
 TextView password;

 private static final String[] colorf =
  { "SELECT ANY FIELD","ANIMAL",  
  "BIRDS",
  "BABYS",
  };
 private ArrayAdapter<String> adapter;

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



    spinnerColor = (Spinner)findViewById(R.id.colorspinner);
    adapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, colorf);
    adapter.setDropDownViewResource(
      android.R.layout.simple_spinner_dropdown_item);
    spinnerColor.setAdapter(adapter);
    spinnerColor.setSelection(0);
    Intent mIntent = getIntent();
    int passwords = mIntent.getIntExtra("intVariableName", 0);//getting the pixel and convent the values to string
    password=(TextView)findViewById(R.id.appenpass);//text view
  // password.setText(Integer.toString(passwords));
    password.append(Integer.toString(passwords));//appending the values
    spinnerColor.setOnItemSelectedListener(
      new Spinner.OnItemSelectedListener(){

  public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) {
  // TODO Auto-generated method stub
  // setBackgroundColor(spinnerColor.getSelectedItem().toString());

  switch(position){
   case 0:

   break;
   case 1:
   //call second class
       Intent animal=new Intent(Catogry.this,Animals.class);
       startActivity(animal);

   break;
   case 2:
   //call third class
       Intent bird=new Intent(Catogry.this,Birds.class);
       startActivity(bird);
   break;
   case 3:
       //call third class
           Intent baby=new Intent(Catogry.this,Babys.class);
           startActivity(baby);
       break;

   default:
   break;
       }
  }


  public void onNothingSelected(AdapterView<?> arg0) {
   // TODO Auto-generated method stub

  }});
   }



 }

1 Ответ

0 голосов
/ 21 января 2012

никто не ответит на этот вопрос, так или иначе, я нахожу его сам

Я передал пакет с одной страницы на другую, что означает. Я получаю пиксель со страницы холста и передаю его следующему действию, после чего значение передается со страницы на страницу холста, где я делаю

String canvas = ""; canvas = canvas + X; (X - целое число, в которое я преобразовал X в строку) и передать значения холста, чтобы я успешно добавил свое значение.

...