[iPhone] - button press even firing multiple times

Hi - first post here, so sorry if it's dumb (doesn't seem to have been answered previously, by searching)...
I have an iPhone app, with a button. In my ViewController code I have an IBAction, which I've linked up with the Touch Up Inside event. The Action function increases an integer score by 50, and then updates a label to display the new score.
When I run this, the score goes up in increments of 200 - implying the button even is being triggered multiple (four) times per click.
Is that normal / is there any obvious reason why this might happen? I can post code if that's useful...
Thanks,
Muzz

Hi Ace, and wecome to the Dev Forum!
Acemuzzy wrote:
When I run this, the score goes up in increments of 200 - implying the button even is being triggered multiple (four) times per click.
No need to guess. Add a log statement as the first line of your action method like this:
- (IBAction)incrementScore:(id)sender {
NSLog(@"incrementScore: sender=%@", sender);
The above will print one line in your Debugger Console window (Run->Dubugger Console) each time the method runs. It's very unlikely that your button is sending more than one action message for each Touch Up Inside event. The console log should tell us exactly who is calling your action method and how many times.
Is that normal
No.
is there any obvious reason why this might happen?
My three top guesses would be: 1) The code in your action method isn't doing what you think; 2) The action method is being called from more than one object; 3) You hooked up the button so that some of its other events (such as Touch Down or Touch Down Repeat) are also connected to your method.
I can post code if that's useful...
Yes, if none of my comments lead you to a solution please post the relevant code. To format code in this forum, please take a look at the first, yellow alert message on the topics page. You can see how your code will appear by clicking the Preview tab above the Reply editor panel. If and when your question is resolved, here's how to close your thread: [http://discussions.apple.com/help.jspa#answers].
- Ray

Similar Messages

  • Issue with When Validate Trigger firing multiple times

    Hi guys,
    I have Designed a Form Personalization on a Form which Fires a concurrent Program (built in:execute Procedure) when a Record is Saved.
    Below are the issues I am facing:
    1.Concurrent Program is Firing Multiple Times after Saving the Record.
    2.2 input Values to Concurrent Program are passed as NULL though I have Data but they are in Different Block of Form.
    Note :I have When Validate trigger on 1 Block but i am trying to pass 2 Values on Another Block as input parameters for Concurrent program.But those values are getting as null when program fires.
    Thanks.

    If EBS then post in {forum:id=475}

  • Problem with ActionListener firing multiple times

    I have a GUI class, GUIView, with a no-arg constructor and a static getInstance() method.
    The GUI class has a JButton called btnB1 with a method:
         void addB1Listener(ActionListener al){
              btnB1.addActionListener(al);
         }The Controller class has an instance of the GUI and the Model.
    The Controller has a constructor which assigns a new ActionListener to the JButton from the GUI.
    private GUI m_gui;
         FTController(GUIView view){
              m_gui = view;
              m_gui.addButtonListener(new AddButtonListener());
         }The Controller has an inner class:
    class AddButtonListener implements ActionListener{
              @Override
              public void actionPerformed(ActionEvent e) {
                          // do stuff
    }The model has a constructor which accepts a GUIView.
    My main method setups instances of the objects:
         private GUIView view;
         private Model model;
         private Controller controller;
         public static void main(String [] args){
              view = GUIView.getInstance();
              model = new Model(view);
              controller = new Controller(view);
         }This action listener for btnB1 is firing multiple times, but I don't understand why.
    Edited by: user10199598 on Jan 9, 2012 2:56 PM

    Here is the actual Controller class
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.IOException;
    import javax.swing.JOptionPane;
    import com.esri.arcgis.carto.FeatureLayer;
    import com.esri.arcgis.carto.IActiveView;
    import com.esri.arcgis.carto.Map;
    import com.esri.arcgis.interop.AutomationException;
    public class FTController{
         private FTView m_arraView;
         private FTModel m_arraModel;
         private Map m_map;
         FTController(FTView view, FTModel model, Map map){
              m_arraView = view;
              m_arraModel = model;
              m_map = map;
              m_arraView.addPointListener(new AddPointListener());
              m_arraView.addExitListener(new AddExitListener());
              m_arraView.addResetListener(new AddResetListener());
         public FTView getM_arraView() {
              return m_arraView;
         // Inner class used as the ActionListener for the btnAddPoint in FTView
         class AddPointListener implements ActionListener {
              @Override
              public void actionPerformed(ActionEvent e) {
                   FeatureLayer fl = (FeatureLayer) m_arraModel.getLayerByName("arra_field_teams", m_map);
                   try {
                        // Start the process to add a new feature point
                        m_arraModel.addPoint(fl, (IActiveView) m_map.getActiveView());
                        // Reset and dispose of the ARRA Field Teams form.
                        m_arraView.getCboTeam().setSelectedIndex(0);
                        m_arraView.getCboAgency().setSelectedIndex(0);
                        m_arraView.getTxtLatitude().setText("");
                        m_arraView.getTxtLongitude().setText("");
                        m_arraView.getTxtGridL().setText("");
                        m_arraView.getTxtGridN().setText("");
                        m_arraView.getTxtQuadrant().setText("");
                        m_arraView.getFtf3IC().setText("0.002");
                        m_arraView.getFtf3FC().setText("0.002");
                        m_arraView.getFtf3IO().setText("0.002");
                        m_arraView.getFtf3FO().setText("0.002");
                        m_arraView.getFtfAgxCartridge().setText("0.000");
                        m_arraView.getFtfBGCM().setText("50.000");
                        m_arraView.getFtfBGURHR().setText("0.002");
                        m_arraView.getTxtTimeOfReading().setText("");
                        m_arraView.dispose();
                        // Refresh the map window
                        m_map.getActiveView().refresh();
                   } catch (AutomationException e1) {
                        e1.printStackTrace();
                   } catch (IOException e1) {
                        e1.printStackTrace();
         } // end AddPointListener
         // Inner class used as the ActionListener for the btnExit in FTView
         class AddExitListener implements ActionListener{
              @Override
              public void actionPerformed(ActionEvent e) {
                   m_arraView.getCboTeam().setSelectedIndex(0);
                   m_arraView.getCboAgency().setSelectedIndex(0);
                   m_arraView.getTxtLatitude().setText("");
                   m_arraView.getTxtLongitude().setText("");
                   m_arraView.getTxtGridL().setText("");
                   m_arraView.getTxtGridN().setText("");
                   m_arraView.getTxtQuadrant().setText("");
                   m_arraView.getFtf3IC().setText("0.002");
                   m_arraView.getFtf3FC().setText("0.002");
                   m_arraView.getFtf3IO().setText("0.002");
                   m_arraView.getFtf3FO().setText("0.002");
                   m_arraView.getFtfAgxCartridge().setText("0.000");
                   m_arraView.getFtfBGCM().setText("50.000");
                   m_arraView.getFtfBGURHR().setText("0.002");
                   m_arraView.getTxtTimeOfReading().setText("");
                   m_arraView.dispose();
         } // end AddExitListener
         // Inner class used as the ActionListner for the btnReset in FTView
         class AddResetListener implements ActionListener{
              @Override
              public void actionPerformed(ActionEvent e) {
                   FeatureLayer fl = (FeatureLayer) m_arraModel.getLayerByName("field_teams", m_map);
                   try {
                        // Actually, "Reset" is deleting all features from the shapefile, poor choice of labels.
                        m_arraModel.resetFeatures(fl, (IActiveView) m_map.getActiveView(), (Map) m_map);
                        // Refresh the map window
                        m_map.getActiveView().refresh();
                   } catch (AutomationException e1) {
                        e1.printStackTrace();
                   } catch (IOException e1) {
                        e1.printStackTrace();
    }Here is where the application starts:
    import java.awt.event.MouseEvent;
    import java.io.IOException;
    import java.text.DecimalFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import javax.swing.UIManager;
    import javax.swing.UnsupportedLookAndFeelException;
    import com.esri.arcgis.addins.desktop.Tool;
    import com.esri.arcgis.arcmap.Application;
    import com.esri.arcgis.arcmapui.IMxDocument;
    import com.esri.arcgis.arcmapui.MxDocument;
    import com.esri.arcgis.carto.IActiveView;
    import com.esri.arcgis.carto.IFeatureLayer;
    import com.esri.arcgis.carto.Map;
    import com.esri.arcgis.framework.IApplication;
    import com.esri.arcgis.geodatabase.Feature;
    import com.esri.arcgis.geodatabase.IFeatureClass;
    import com.esri.arcgis.geometry.Point;
    import com.esri.arcgis.interop.AutomationException;
    public class FTTool extends Tool {
         private IApplication app;
         private IActiveView av;
         private IMxDocument mxDocument;
         private Map map;
         private FTView arraView;
         private FTModel model;
         private FTController controller;
         private int left;
         private int top;
          * Called when the tool is activated by clicking it.
          * @exception java.io.IOException if there are interop problems.
          * @exception com.esri.arcgis.interop.AutomationException if the component throws an ArcObjects exception.
         @Override
         public void activate() throws IOException, AutomationException {
         @Override
         public void init(IApplication app) throws IOException, AutomationException {
              this.app = app;
              try {
                 try {
                        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
                   } catch (ClassNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                   } catch (InstantiationException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                   } catch (IllegalAccessException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                   } catch (UnsupportedLookAndFeelException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                   // Initialize our map document, map and active view
                   mxDocument = (IMxDocument)app.getDocument();
                   av = mxDocument.getActiveView();
                   map = (Map)mxDocument.getMaps().getItem(0);
                   // Get an instance of the ARRAView JFrame, and setup the model and controller for this tool add-in
                   arraView = FTView.getInstance();
    //               arraView.addWindowListener(arraView);
                   // Set up the model and controller objects
                   model = new FTModel(arraView);
                   controller = new FTController(arraView, model, map);
              } catch (AutomationException e) {
                   e.printStackTrace();
              } catch (IOException e) {
                   e.printStackTrace();
         @Override
         public void mousePressed(MouseEvent mouseEvent) {
              super.mousePressed(mouseEvent);
              // Cast IMxDocument into MxDocument so we can get the Parent which returns an Application
              MxDocument mxd = (MxDocument)mxDocument;
              Application application;
              // Create an Application object so we can get the left and top properties of the window
              //  so we can position the Field Teams GUI.
              try {
                   application = new Application(mxd.getParent());
                   left = application.getLeft() + 75;
                   top = application.getTop() + 105;
              } catch (IOException e2) {
                   e2.printStackTrace();
              try {
                   // Call the model to convert the screen coordinates to map coordinates and project the point to WGS_1984
                   Point p1 = new Point();
                   p1.putCoords((double)mouseEvent.getX(), (double)mouseEvent.getY());
                   Point p2 = (Point) model.getMapCoordinatesFromScreenCoordinates(p1, av);
                   Point point = (Point)model.handleToolMouseEvent(mouseEvent, av);
                 // Format the decimal degrees to six decimal places
                   DecimalFormat df = new DecimalFormat("#.######");
                   // Assign the point2 values to double
                   double x = point.getX();
                   double y = point.getY();
                   // Set the text of the lat/long fields.
                   arraView.getTxtLatitude().setText(df.format(y));
                   arraView.getTxtLongitude().setText(df.format(x));
                   // Set the Time of Reading text field
                   Date now = new Date();
                   SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
                   arraView.getTxtTimeOfReading().setText(sdf.format(now).toString());
                   // Determine whether the mouse click point intersects the arra_grid_quad.
                   //  If so, iterate over that feature cursor to update the gridl, gridn and quadrant fields...
                   IFeatureLayer featLayer = (IFeatureLayer) model.getLayerByName("arra_grid_quads", map);     
                   IFeatureClass featClass = featLayer.getFeatureClass();
                   Feature iFeat = (Feature) model.queryArraGridQuads(featClass, p2);
                   if(iFeat != null){
                        // Fill in the grid and quadrant values if there are any.
                        String gridl = (String) iFeat.getValue(iFeat.getFields().findField("GRID_L"));
                        String gridn = (String) iFeat.getValue(iFeat.getFields().findField("GRID_N"));
                        String quadrant = (String) iFeat.getValue(iFeat.getFields().findField("QUADRANT"));
                        arraView.getTxtGridL().setText(gridl);
                        arraView.getTxtGridN().setText(gridn);
                        arraView.getTxtQuadrant().setText(quadrant);
                   } else {
                        // Revert values back to empty string after clicking in the grid, then outside of the grid.
                        arraView.getTxtGridL().setText("");
                        arraView.getTxtGridN().setText("");
                        arraView.getTxtQuadrant().setText("");
                   // Set the Field Team Readings form to visible, or redisplay it if it is already visible
                   arraView.setBounds(left, top, 325, 675);
                   arraView.setVisible(true);
              } catch (Exception e) {
                   e.printStackTrace();
         @Override
         public boolean deactivate() throws IOException, AutomationException {
              return super.deactivate();
         @Override
         public boolean isChecked() throws IOException, AutomationException {
              return super.isChecked();
         public FTView getArraView() {
              return arraView;
         public IApplication getApp() {
              return app;
         public Map getMap() {
              return map;
         public FTModel getModel() {
              return model;
    }Is this enough?
    Edited by: user10199598 on Jan 9, 2012 3:20 PM

  • Trigger is firing multiple times

    Hi
      we have a table in database , which has multiple triggers defined by Vendor. I have created our own custom trigger on this table also , which fires last. Goal of this custom trigger is to send an email, when ever update happens on table. But somehow
    trigger is firing multiple times for same update, so it is sending multiple email for same update also
       Any advice?
    thanks
    Drew

    ALTER trigger [dbo].[AB_TABLEXXX_IUD_TR]
    on [dbo].[TABLEXXX]
    after insert,update,delete
    as
    begin
        set nocount on
        declare @sub varchar(1024)
        declare @tmpstr nvarchar(max)
     DECLARE @action as char(1);
     declare @id as int
     declare @send as int
        SET @action = 'I'; -- Set Action to Insert by default.
        declare @insCount int
     declare @delCount int
     DECLARE @newLineChar AS CHAR(2) = CHAR(13) + CHAR(10)
     DECLARE @tab as CHAR(1)=char(9)
        declare @vendorId char(30)  
     declare @detailmsg varchar(500)
     declare @ovname varchar(30),@nvname varchar(100)
     declare @ovchkname varchar(100),@nvchkname varchar(100)
     declare @oaddress1 varchar(100),@naddress1 varchar(100)
     declare @oaddress2 varchar(100),@naddress2 varchar(100)
     declare @oaddress3 varchar(100),@naddress3 varchar(100)
     declare @ouserdef1 varchar(100),@nuserdef1 varchar(100)
     declare @ovndclsid varchar(11),@nvndclsid varchar(11)
     select @tmpstr=''
     select @insCount = count(*) from INSERTED
     select @delCount = count(*) from DELETED
        if(@insCount > 0 or @delCount > 0)--if something was actually affected, otherwise do nothing
        Begin
            if(@insCount = @delCount)
                set @action = 'U'--is update
            else if(@insCount > 0)
                set @action = 'I' --is insert
            else
                set @action = 'D' --is delete
        End
     else
      select @action='X'
     if(@action='X') RETURN
     select @sub='Not Found'
     set @send=0
        if (@action='I')
     begin
      select top 1 @vendorId=rtrim(VENDORID),@nvname=rtrim(VENDNAME),@nvchkname=rtrim(VNDCHKNM), @naddress1=rtrim(ADDRESS1) ,
        @naddress2=rtrim(ADDRESS2),@naddress3=rtrim(ADDRESS3),@nuserdef1=rtrim(USERDEF1),@nvndclsid=rtrim(VNDCLSID) from inserted 
      select @sub=ORIGINAL_LOGIN()+' : '+'Data inserted in table ''TABLEXXX'''
      select @send=1
      select @sub=ORIGINAL_LOGIN()+' : '+'New Vendor
    '''+@nvname+''' is added'
      select @tmpstr=@sub
      select @tmpstr =@tmpstr+@newLineChar +'Inserted On: '+ Convert(varchar(50),sysdatetime())+@newLineChar
      select @tmpstr=@tmpstr+@newLineChar+'Vendor ID:
    '+@vendorId
      select @tmpstr=@tmpstr+@newLineChar+'Vendor Name:
    '+@nvname
      select @tmpstr=@tmpstr+@newLineChar+'Check Name:
    '+@nvchkname
      select @tmpstr=@tmpstr+@newLineChar+'Address1:
    '+@naddress1
      select @tmpstr=@tmpstr+@newLineChar+'Address2:
    '+@naddress2
      select @tmpstr=@tmpstr+@newLineChar+'Address3:
    '+@naddress3
      select @tmpstr=@tmpstr+@newLineChar+'User Def:
    '+@nuserdef1
      select @tmpstr=@tmpstr+@newLineChar+'Class ID:
    '+@nvndclsid
     end
     if (@action='U')
     begin
      select @sub=ORIGINAL_LOGIN()+':''Data Updated in table ''TABLEXXX'''  
      declare @iTotal int
      select @iTotal =0
      select @detailmsg=''
      create table #new_values(
       VENDORID varchar(100) NULL,
       processed char(1) NULL
      insert into #new_values
         select distinct VENDORID,NULL from inserted  
      while ((select count(*) from #new_values where processed is null)>0 and @iTotal<=50)
      begin
         --PRINT 'UPDATE Entered ' +@action
       select @iTotal=@iTotal+1
       select top 1 @vendorId=VENDORID from #new_values where processed is null
       update #new_values set processed='Y' where
    VENDORID=@vendorId and processed is null
       select @detailmsg=''
       select
         top 1       
           @ovname=o.VENDNAME, @nvname=n.VENDNAME,
        @ovchkname=o.VNDCHKNM,@nvchkname=n.VNDCHKNM,
        @oaddress1=o.ADDRESS1,@naddress1=n.ADDRESS1,
        @oaddress2=o.ADDRESS2,@naddress2=n.ADDRESS2,
        @oaddress3=o.ADDRESS3,@naddress3=n.ADDRESS3,
        @ouserdef1=o.USERDEF1,@nuserdef1=n.USERDEF1,
        @ovndclsid=o.VNDCLSID,@nvndclsid=n.VNDCLSID
       from  inserted n,deleted o
       where n.VENDORID=o.VENDORID and n.VENDORID
    =@vendorId
       if (update(VENDNAME) and @ovname<>@nvname) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Vendor Name: '+rtrim(@ovname)+' => '+rtrim(@nvname)
       if (update(VNDCHKNM) and @ovchkname<>@nvchkname) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Check Name: '+rtrim(@ovchkname)+' => '+rtrim(@nvchkname)
       if (update(ADDRESS1) and @oaddress1<>@naddress1) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Address1: '+rtrim(@oaddress1)+' => '+rtrim(@naddress1)
       if (update(ADDRESS2) and @oaddress2<>@naddress2) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Address2: '+rtrim(@oaddress2)+' => '+rtrim(@naddress2)
       if (update(ADDRESS3) and @oaddress3<>@naddress3) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Address3: '+rtrim(@oaddress3)+' => '+rtrim(@naddress3)
       if (update(USERDEF1) and @ouserdef1<>@nuserdef1) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'User Def: '+rtrim(@ouserdef1)+' => '+rtrim(@nuserdef1)
       if (update(VNDCLSID) and @ovndclsid<>@nvndclsid) select @detailmsg
    =@detailmsg+ @newLineChar
    +@tab+'Class ID: '+rtrim(@ovndclsid)+' => '+rtrim(@nvndclsid)
       if(len(@detailmsg)>0)
       begin
           select @send=1
        if (len(@tmpstr)<=0)
        begin
          select @sub=ORIGINAL_LOGIN()+' : '+'Vendor '''+rtrim(@ovname)+''' Updated in table TABLEXXX'
          select @tmpstr='Vendor '''+rtrim(@ovname)+''' Updated'
          select @tmpstr
    =@tmpstr+@newLineChar +@tab+'Updated On: '+ Convert(varchar(50),sysdatetime())+@newLineChar
          select @tmpstr
    =@tmpstr+@newLineChar +@tab+'Vendor ID: '+rtrim(@vendorId)
        end
        select @tmpstr=@tmpstr +@detailmsg
       end
      end
     end
     if (@action='D')
     begin
      select top 1 @vendorId=rtrim(VENDORID),@nvname=rtrim(VENDNAME),@nvchkname=rtrim(VNDCHKNM), @naddress1=rtrim(ADDRESS1) ,
        @naddress2=rtrim(ADDRESS2),@naddress3=rtrim(ADDRESS3),@nuserdef1=rtrim(USERDEF1),@nvndclsid=rtrim(VNDCLSID) from deleted 
      select @send=1
      select @sub=ORIGINAL_LOGIN()+' : '+'Vendor
    '''+@nvname+''' is DELETED'
      select @tmpstr=@sub
      select @tmpstr =@tmpstr+@newLineChar +'Deleted On: '+ Convert(varchar(50),sysdatetime())+@newLineChar
      select @tmpstr=@tmpstr+@newLineChar+'Vendor ID:
    '+@vendorId
      select @tmpstr=@tmpstr+@newLineChar+'Vendor Name:
    '+@nvname
      select @tmpstr=@tmpstr+@newLineChar+'Check Name:
    '+@nvchkname
      select @tmpstr=@tmpstr+@newLineChar+'Address1:
    '+@naddress1
      select @tmpstr=@tmpstr+@newLineChar+'Address2:
    '+@naddress2
      select @tmpstr=@tmpstr+@newLineChar+'Address3:
    '+@naddress3
      select @tmpstr=@tmpstr+@newLineChar+'User Def:
    '+@nuserdef1
      select @tmpstr=@tmpstr+@newLineChar+'Class ID:
    '+@nvndclsid
     end
     if (@action<>'X' and @send=1)
     begin
      Exec msdb.dbo.sp_send_dbmail
       @profile_name='default',   
       @recipients='[email protected]',
       @subject= @sub,
       @body=@tmpstr
     end
    end
    Drew

  • HT204088 iTunes is telling me that I have not purchased from my iPhone before although I have multiple times, and I don't remember my security questions and there is no option to change them. Any suggestions other than making a new account?

    iTunes is telling me that I have not purchased from my iPhone before although I have multiple times, and I don't remember my security questions and there is no option to change them. Any suggestions other than making a new account?

    If you create a new Apple ID you won't have access to the media purchased with the Apple ID you are currently using.
    Try here > Rescue email address and how to reset Apple ID security questions

  • How can I restore Thunderbird behavior so I can delete emails by pressing delete key multiple times (without using mouse to change focus back to message list)?

    Thunderbird 24.3.0 (latest under OpenBSD)
    I (like most people) get spam in my inbox. When there are multiple spam messages in a row in my inbox I used to click on the first message and then press the delete key repeatedly for each sequential spam message.
    After upgrading, this doesn't work. Instead, when I click a message it opens in the message preview pane and moves the focus to the message. Thus I need to click twice to even be able to press the delete key to delete one message. When I press the delete key, the message is deleted and the highlighted message becomes the next one in the list. This opens the message in the preview pane and again shifts the focus to the message. Thus I can't press the delete key again but must move the mouse to click on the message before I can delete it.
    As a result, what used to be a very fast process of weeding through spam has become a real annoyance.
    I realize I can hide the message preview pane to prevent the focus from moving, but this means I must delete solely based on the email subject/sender -- or open each message (which is even slower).
    I also realize that I can press tab multiple times (sometime 4, sometimes many more) to shift the focus back but that's not much faster than using the mouse.
    How can I prevent Thunderbird from shifting the focus away from the email list panel unless I actually click somewhere else?

    Well said! And you said it about six weeks ago. And 4 other people said "Me Too." - I guess we're screwed.
    I guess it's time to switch to GMail.
    Such a trivial thing, but it irritates me every single time.
    MOZILLA - YOU'RE GOING DOWNHILL...

  • One email with iPhone pic attachment is received multiple times

    Searched the discussions and couldn't find this one. Problem is this:
    My wife takes a picture with her iPhone and goes back to her camera roll to view it. While viewing the picture, she clicks to email the photo. She sends it out to her recipients (one time!), who are happy to get the picture the first time, but not the 3, 4 or 5 times following!
    Any thoughts on what the issue here is? Recipient email addresses are in both Yahoo and AOL, so it can't be blamed on the recipient email server.
    Why are these leaving the outbox multiple times?
    Also, no "multiple sent" issues with emails that don't have pix attached.
    Thanks! -Steve

    I have this exact same problem. After trying to send an email with a picture attached, the person receives it multiple times and then i will get an error on my device, stating that the email did not deliver, when in fact it did, and keeps on sending it a few more times. Between 2 and 5 times each time i send an email with a picture. This was not happening if a picture was not attached.

  • MouseClicked firing multiple times

    Greetings,
    I have a GUI Java application with a few buttons that do different things. Sometimes, my mouseClicked event seems to get fired several times instead of the once I've actually clicked it.
    Example:
    BTN_Launch.setText("Upload File(s)");
    BTN_Launch.setPreferredSize(new Dimension(140,40));
    BTN_Launch.setMinimumSize(new Dimension(140,40));
    BTN_Launch.setToolTipText("Run Upload Process");
    BTN_Launch.setFont(Font_Bold);
    BTN_Launch.setEnabled(false);
    BTN_Launch.addMouseListener(new launchClicked());
    class launchClicked extends MouseAdapter {
    public synchronized void mousePressed(MouseEvent e) { }
    public synchronized void mouseReleased(MouseEvent e) { }
    public synchronized void mouseClicked(MouseEvent e) {
    String foundErrors = "0";
    int errCount = 0;
    if( uploadFileDirectory.equals("") ) { foundErrors += ":1"; errCount++; }
    if( uploadFiles.length == 0 ) { foundErrors += ":2"; errCount++; }
    if( selectedVendor.equals("") ) { foundErrors += ":3"; errCount++; }
    if( qdocUsername.getText() != null && qdocUsername.getText().equals("") == false) {
    QDoc_UserName = qdocUsername.getText();
    } else {
    foundErrors += ":4";
    errCount++;
    if( qdocPassword.getPassword() != null && qdocPassword.getPassword().length > 0) {
    QDoc_Password = new String(qdocPassword.getPassword());
    } else {
    foundErrors += ":5";
    errCount++;
    if( foundErrors.equals("0") == false ) {
    int index = 0;
    String[] errString = new String[errCount + 2];
    errString[index] = ERR_HEAD;
    if( foundErrors.indexOf("1") >= 0 ) { errString[++index] = MSG1; }
    if( foundErrors.indexOf("2") >= 0 ) { errString[++index] = MSG2; }
    if( foundErrors.indexOf("3") >= 0 ) { errString[++index] = MSG3; }
    if( foundErrors.indexOf("4") >= 0 ) { errString[++index] = MSG4; }
    if( foundErrors.indexOf("5") >= 0 ) { errString[++index] = MSG5; }
    errString[++index] = ERR_FOOT;
    JOptionPane.showMessageDialog(Main, errString,
    "Validation Error",
    JOptionPane.ERROR_MESSAGE);
    } else {
    if( emailRecipients.contains(QDoc_UserName) == false ) {
    emailRecipients.addElement(QDoc_UserName);
    for( int x=1; x<VENDORS.length; x++ ) {
    emailRecipients.remove(vendorEmails.get(VENDORS[x]));
    emailRecipients.addElement(vendorEmails.get(selectedVendor));
    System.out.println("Start upload...");
    System.out.print("Files: ");
    for( int x=0; x<uploadFiles.length; x++ ) {
    System.out.print("\"" + uploadFiles[x] + "\" ");
    System.out.println();
    System.out.println("Dir: \"" + uploadFileDirectory + "\"");
    System.out.println("Vendor: \"" + selectedVendor + "\"");
    System.out.println("User: \"" + QDoc_UserName + "\"");
    System.out.println("Pwd: \"" + QDoc_Password + "\"");
    System.out.println("Publish: \"" + publishFiles + "\"");
    System.out.println("EMail: \"" + emailRecipients.toString() + "\"");
    The code in launchClicked.mouseClicked(e) method is getting executed more than once in many situations. What seems to be wrong here?

    Greetings,
    I have a GUI Java application with a few buttons that do different things. Sometimes, my mouseClicked event seems to get fired several times instead of the once I've actually clicked it.
    Example:
    BTN_Launch.setText("Upload File(s)");
    BTN_Launch.setPreferredSize(new Dimension(140,40));
    BTN_Launch.setMinimumSize(new Dimension(140,40));
    BTN_Launch.setToolTipText("Run Upload Process");
    BTN_Launch.setFont(Font_Bold);
    BTN_Launch.setEnabled(false);
    BTN_Launch.addMouseListener(new launchClicked());
    class launchClicked extends MouseAdapter {
    public synchronized void mousePressed(MouseEvent e) { }
    public synchronized void mouseReleased(MouseEvent e) { }
    public synchronized void mouseClicked(MouseEvent e) {
    String foundErrors = "0";
    int errCount = 0;
    if( uploadFileDirectory.equals("") ) { foundErrors += ":1"; errCount++; }
    if( uploadFiles.length == 0 ) { foundErrors += ":2"; errCount++; }
    if( selectedVendor.equals("") ) { foundErrors += ":3"; errCount++; }
    if( qdocUsername.getText() != null && qdocUsername.getText().equals("") == false) {
    QDoc_UserName = qdocUsername.getText();
    } else {
    foundErrors += ":4";
    errCount++;
    if( qdocPassword.getPassword() != null && qdocPassword.getPassword().length > 0) {
    QDoc_Password = new String(qdocPassword.getPassword());
    } else {
    foundErrors += ":5";
    errCount++;
    if( foundErrors.equals("0") == false ) {
    int index = 0;
    String[] errString = new String[errCount + 2];
    errString[index] = ERR_HEAD;
    if( foundErrors.indexOf("1") >= 0 ) { errString[++index] = MSG1; }
    if( foundErrors.indexOf("2") >= 0 ) { errString[++index] = MSG2; }
    if( foundErrors.indexOf("3") >= 0 ) { errString[++index] = MSG3; }
    if( foundErrors.indexOf("4") >= 0 ) { errString[++index] = MSG4; }
    if( foundErrors.indexOf("5") >= 0 ) { errString[++index] = MSG5; }
    errString[++index] = ERR_FOOT;
    JOptionPane.showMessageDialog(Main, errString,
    "Validation Error",
    JOptionPane.ERROR_MESSAGE);
    } else {
    if( emailRecipients.contains(QDoc_UserName) == false ) {
    emailRecipients.addElement(QDoc_UserName);
    for( int x=1; x<VENDORS.length; x++ ) {
    emailRecipients.remove(vendorEmails.get(VENDORS[x]));
    emailRecipients.addElement(vendorEmails.get(selectedVendor));
    System.out.println("Start upload...");
    System.out.print("Files: ");
    for( int x=0; x<uploadFiles.length; x++ ) {
    System.out.print("\"" + uploadFiles[x] + "\" ");
    System.out.println();
    System.out.println("Dir: \"" + uploadFileDirectory + "\"");
    System.out.println("Vendor: \"" + selectedVendor + "\"");
    System.out.println("User: \"" + QDoc_UserName + "\"");
    System.out.println("Pwd: \"" + QDoc_Password + "\"");
    System.out.println("Publish: \"" + publishFiles + "\"");
    System.out.println("EMail: \"" + emailRecipients.toString() + "\"");
    The code in launchClicked.mouseClicked(e) method is getting executed more than once in many situations. What seems to be wrong here?

  • CFSchedule firing multiple times

    Hi Everyone,
    i still have not found a solution to this. if anyone has any
    other suggestions please let me know.
    Also i would like to report this as a bug, what is the proper
    procedure for reporting this?
    thanks to all
    Tim
    Original- Hi All,
    i have had issues since upgrading from 6 to 7 with
    cfschedule. sometimes it runs fine, other times it will run the
    same task multiple times in a row, other times it will wait an hour
    then run the same task again.
    This may not sound like a big deal, but the tasks send out
    several thousands of emails. talk about spam!!
    I have been screamed at on a weekly basis to make this stop.
    Now since the the DST change, the tasks that were scheduled
    at 3pm run at 3pm and again at 4pm!!
    Please someone help!!!!!!!!!!!!!!!!!!!!!
    Thanks in advance.
    Tim

    Hi BK,
    in my task is setup to run every 15 with a start date of a
    few days ago and no end date or time.
    it calls a file on the same server via its dsn name.
    The file it calls is this:
    [code]
    <cfset testtext = "Testing st #now()#">
    <cfset testSTname = "d:\st_test_" &
    #DateFormat(now(),"yyyymmdd")#&""&#TimeFormat(now(),"HHmmss")#
    &".txt">
    <!--- <cffile action="write" file="#testSTname#"
    output="#testtext#" nameconflict="makeunique"> --->
    <cfmail to="[email protected]" from="[email protected]"
    subject="st timer test">
    #Dateformat(now(),"mm/dd/yyyy")#
    #TimeFormat(now(),"hh:mm:ss:l")#
    </cfmail>
    [/code]
    If you notice i commented out the file write. something was
    puzzling about it, it would write fine for an hour then once in
    awhile write multiples (by comparing the date created on the file
    in windows.
    I then found the calls in my IIS log file, every single call
    was done twice at exactly the same time.
    (edited for security)
    [code]
    2007-07-30 22:15:06 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    2007-07-30 22:15:06 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    2007-07-30 22:30:06 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    2007-07-30 22:30:06 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    2007-07-30 22:45:08 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    2007-07-30 22:45:08 x.x.x.x GET /tools/test_ts.cfm - 80 -
    x.x.x.x CFSCHEDULE 200 0 0
    [/code]
    So i decieded to make it send an email, this way there is a
    queue so to speak for the messages to be written, i think this is
    why i saw speratic multiples with cffile.
    Email 1 contents: {ts '2007-07-31 01:30:00'} 01:30:00:769
    Email 2 contents: {ts '2007-07-31 01:30:00'} 01:30:00:909
    So far, i am only getting 2 copies for every fire of the
    task, but i have seen in other tasks that email, up to 6 copies.
    i can see this in IIS Logs, the test cfm file being called at
    least twice per task for long periods, then other tasks will fire
    and i only see a single call to the test cfm file. but its next
    execution time is duplicated if there is no other tasks running
    during the same time period
    I have dug through all the logs for each task, so far all of
    the task that have no end date fire multiple times.
    I can see the results (files written, db records inserted,
    emails sent, IIS log files).
    all show duplicates during same creation time Except the
    scheduler.log it only shows each of those tasks firing once.
    I can only assume that the scheduler log is being updated
    correctly which leads me to belive that this log entry is done some
    time before the scheduler payload execution or the scheduler code
    dosnt log multiple triggers on its actions.
    So i am going to set the End date for this test task to see
    if the duplicates stop.
    more to come
    Tim

  • Why does my iphone only send one picture multiple times when i select multiple photos to send?

    why does my iphone send one picture multiple times when i select multiple photos to send (via message or email)?

    Are you sending via Camera itself?
    That is, selecting a picture, then select forward link symbol from bottom left
    then select another picture,
    Each time make sure you see the blue check mark at bottom right of each selected picture.
    The number of " # Photos Selected" should be displayed at the top.
    Then select Mail or Message and transmit.

  • Alert is Firing multiple Times

    Hi,
    I designed an alert for one of my requirement, for this i build i a sql statement
    and my sql statement is returning 20 records and i check the same in Application, the records are matching and till now every thing works fine for me.
    When i start my alert, My alert is firing 20 times and i am receiving 20 mails, but my requirement is i need to consolidated all the records and need to send a mail.
    Do i need to do some setup for this, please help me on this.
    Thanks for all for your continuous help and guidance.
    Naz

    Hello,
    When you created your alert action to create the notification, what did you set the action level to? Sound like you want it to be Summary but you have it set at Detail. Create another notification at Summary level and see if you get the results you are looking for.
    HTH,
    --Johnnie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Event firing multiple times (et_Got_Focus)

    Hi,
    I just noticed while debugging my Add On code that the et_Got_Focus event which I have added to my event filters is triggered 64 times when I change a field value and then move to a different field.  This not only happens in the matrix when changing field values and tabbing through but also in the header fields.
    This has got to be a bug and it is not only slowing down the A/P Invoice form but it is potentially very dangerous to have an event firing 64 times when it should only be fired once. 
    To test this all one needs to do is add the et_Got_Focus event to the event filter with the A/P Invoice form, then add a debug statement to write out the itemvalue properties and you will see once you edit a value and tab you will get 64 statements that are the et_Got_Focus event, BeforeAction false for the same field or column when it should only occur once.
    I have a very digrunted client that is very frustrated due to the amount this slows down data entry in the A/P Invoice.  I cannot get rid of this event because there is a particular field I am monitoring for the got focus event so I can stop it under certain circumstances.
    If anyone else has experienced this or knows how to resolve this please let me know.  I guess if I don't find out why this is happening I will post a CSN to SAP.
    Thanks very much,
    David Wall
    Here is a sample of my debug output messages for one update of a single field and then tabbing out:
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False
    et_GOT_FOCUS -  - False

    Hi David,
    We at Self Informatique France have the same problem of getfocus firing many times at one of our customers in Algeria although wae are not using formated search.Any solution ?
    Best Rgds.
    Antoine Egeileh
    President
    Self Informatique
    [email protected]

  • JPane ancestorResized event fired multiple times

    Hi,
    I have a JPane which in turn contains some more controls. I'm handling "ancestorResized" event for the JPane. But, when I resize the form once, the "ancestorResized" event for the JPane is called 3 times. where as the "this_componentResized" event is called only once.
    I am doing a lot of control relocation and resizing in the "ancestorResized" event handler. Since it is fired 3 times, it is making my application slow.
    Can some body tell me how to come over this.
    Regards.

    Hi David,
    We at Self Informatique France have the same problem of getfocus firing many times at one of our customers in Algeria although wae are not using formated search.Any solution ?
    Best Rgds.
    Antoine Egeileh
    President
    Self Informatique
    [email protected]

  • IPhone 4s losing data connection multiple times/day

    It seems about 3-4 times/day, my new iphone 4s will lose data connectivity. The phone will show full bars and the 3G icon appears, but I cannot access a data connection - email continuously loads, safari / facebook app / weather channel app all time out. As soon as I reboot, it works fine. This is getting really really annoying. Anyone else experiencing this or have a fix?? Thinking of returning it.

    My Problem Detailed
    I have been having this same problem for months. To be more specific, it happens whether I'm on 3G or WiFi. Back before iOS5 when I was on 3G, I could simply turn off 3G and turn it back on, but now with iOS 5, it is turning Airplane Mode on/off only, which like everyone else fixes the problem only temporarily.
    Attempted Failed Solutions
    It has transcended hardware and SIM cards. It was happening on my iPhone 4 and when I moved to the 4s, it was still there. So, it's most likely not the phone itself. I also swapped out SIM cards. That also didn't do the trick. That leaves me to one last idea...
    Last Possible Solution
    It's gotta be the software. Some app or process is hacking away at the connection, possibly hogging all of the connection. This was the  Apple Store's original guess too (before I upgraded phones or swapped SIM cards). Their recommendation is to restore the phone with the base OS and not from backup. Then without adding any apps, make sure that it works fine (for possibly a day or two). Then start adding apps back one at a time. Has anyone tried this yet? With so much setup, I am hesitant to try this without knowing if it will solve it.
    Alternative Solutions
    If it is software, possibly we all have a common app/process that few have. Maybe we can all compare what we have. Unfortunately, my app count is still over 100 even after deleting more than half of my apps. Does anyone else have any ideas? I'd love to figure this out as it is extremely frustrating as you all know.

  • IPhone 4 in restore mode MULTIPLE times a day

    I am on my 2nd iPhone 4 since March 2011 and am at a loss of what to do.
    I started experiencing errors with my first iPhone in August- I was getting the error message " This accessory is not optimized for this iPhone" when the phone was plugged into no accessories other than the charger.  I updated software, restored the phone and used an electrical blower to check for dust in the charger and the port- nothing worked.  In addition to this annoying error, the ringer and earpiece volume was also broked and unable to be adjusted.
    So I took my phone to the Apple store, where they could not diagnose the problem so I was given a new phone.
    One day later, I start getting the restore or SOS mode screen.  I restore my phone almost every other day for a week as that is the frequency with which I received this error until finally when trying to restore I get the error message that there is no SIM installed, when there was.  So took the SIM out, turned the phone off and on and was able to restore.
    Few days later, after more restores, same no SIM message so I go to AT&T and get a new SIM.  Works for 3 days, then there is the restore screen again. 
    Are there any helpful tips or is it time to make another trip to the Genuis Bar for yet another phone?
    Thanks!

    If it still does this after a restore as new with only the default apps on it, then I would return it and get it replaced under warranty. There is no other troubleshooting you can do.

Maybe you are looking for