AH! yes, that'll do it :)

Glad you got it worked out

Cheers

Nic

On Sun, Jul 1, 2012 at 8:32 PM, Gerry High <[email protected]> wrote:
> Not easily at the moment.
>
> However, thanks to your suggestion of trying to create the sheet every time 
> I've figured out the error (on my part).
>
> In my code I had
>
> if (sheet == null)
> {
>         create it, etc.
> }
> sheet.Click +=….
>
> The Clicked handler was getting += each time through that the user clicked on 
> the add photo button.  Thus it was calling it twice which explains why it was 
> complaining about the active controller as the Image Picker was being 
> displayed twice.
>
> The sheet.Clicked += should have been inside the if (){} block.  :)
>
> Thanks,
> Gerry
>
> On Jul 1, 2012, at 2:06 PM, Nic Wise <[email protected]> wrote:
>
>> Hrmmm... are you able to try it on the normal version? Might be a
>> MonoTouch-not-yet-on-the-beta-of-ios type issue :)
>>
>>
>>
>> On Sun, Jul 1, 2012 at 8:03 PM, Gerry High <[email protected]> wrote:
>>> It fails on the second time in displaying the Image Picker.
>>>
>>> I should note that this occurs on the Simulator running iOS [redacted].
>>>
>>> Gerry
>>>
>>> On Jul 1, 2012, at 1:19 PM, Nic Wise <[email protected]> wrote:
>>>
>>>> Well, the Clicked method (and other events) are just using an internal 
>>>> delegate.
>>>>
>>>> Does it not work at all? or only on the second call?
>>>>
>>>> try taking out the if (sheet == null) bit, and recreate it each time.
>>>>
>>>>
>>>>
>>>> On Sun, Jul 1, 2012 at 6:50 PM, Gerry High <[email protected]> wrote:
>>>>> I do not recreate it each time as it is stored in a class variable.  So I 
>>>>> do a check of
>>>>>
>>>>> if (sheet == null)
>>>>> {
>>>>>       create it here
>>>>> }
>>>>> sheet.Clicked += TakePhoto();
>>>>> sheet.ShowInView(this.View);
>>>>>
>>>>> In my clicked handler I then create the image picker and have tried quite 
>>>>> a few variations on PresentModalViewControllerAnimated (this, 
>>>>> navigationcontroller, root, etc.) as well as the recommended 
>>>>> PresentViewController with a completed handler.
>>>>>
>>>>> The only way I got it to work was to comment out the Clicked handler and 
>>>>> instead set a delegate which implements the Dismissed method (e.g. 
>>>>> sheet.Delegate = new MySheetDelegate();)
>>>>>
>>>>> Thanks,
>>>>> Gerry
>>>>>
>>>>> On Jul 1, 2012, at 12:00 PM, Nic Wise <[email protected]> wrote:
>>>>>
>>>>>> Could it be that you are not recreating the ActionSheet each time? I
>>>>>> have a load of working code around this, eg
>>>>>>
>>>>>> https://gist.github.com/3028960
>>>>>>
>>>>>> parentview, in this case, is the dialogviewcontroller that the user
>>>>>> was looking at when they hit the button.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Sun, Jul 1, 2012 at 3:03 PM, Gerry High <[email protected]> wrote:
>>>>>>> I sent this yesterday to the list but then never saw it posted so am 
>>>>>>> resending it.
>>>>>>> =====
>>>>>>> I noticed an issue in using an UIActionSheet in combination with a 
>>>>>>> UIImagePickerController and thought I'd shared what I've seen and a 
>>>>>>> work around.  I ported some working code from Xcode to MonoTouch and 
>>>>>>> got a crash with "Application tried to present modally an active 
>>>>>>> controller".  The use case is a UIActionSheet displaying 2-3 buttons 
>>>>>>> and then from the UIActionSheet.Clicked event displaying a 
>>>>>>> UIImagePickerController.
>>>>>>>
>>>>>>> On the first call from the ActionSheet to the ImagePicker it works fine 
>>>>>>> all the way through the cancel from the image picker.  However, the 
>>>>>>> second time I make the call it fails when trying to display the 
>>>>>>> UIImagePickerController with the above mentioned error.
>>>>>>>
>>>>>>> One thing I did in comparing my Xcode vs MT code is that I was using 
>>>>>>> the Clicked event on the action sheet vs the action sheet delegate 
>>>>>>> method didDismissWithButtonIndex.  I decided to write a simple delegate 
>>>>>>> class and override the Dismissed method.  Now my code works with no 
>>>>>>> errors.
>>>>>>>
>>>>>>> Is there a difference in how the delegate Dismissed method works vs the 
>>>>>>> Clicked event?  You would think they'd behave the same but it appears 
>>>>>>> that they do not.
>>>>>>>
>>>>>>> Thanks.
>>>>>>> Gerry
>>>>>>> _______________________________________________
>>>>>>> MonoTouch mailing list
>>>>>>> [email protected]
>>>>>>> http://lists.ximian.com/mailman/listinfo/monotouch
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Nic Wise
>>>>>> t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
>>>>>> b. http://www.fastchicken.co.nz/
>>>>>>
>>>>>> Earnest: Self-employed? Track your business expenses and income.
>>>>>> http://earnestapp.com
>>>>>> Nearest Bus: find when the next bus is coming to your stop. 
>>>>>> http://goo.gl/Vcz1p
>>>>>> mobileAgent (for FreeAgent): get your accounts in your pocket.
>>>>>> http://goo.gl/IuBU
>>>>>> Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa
>>>>>> London Bike App: Find the nearest Boris Bike, and get riding! 
>>>>>> http://goo.gl/Icp2
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Nic Wise
>>>> t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
>>>> b. http://www.fastchicken.co.nz/
>>>>
>>>> Earnest: Self-employed? Track your business expenses and income.
>>>> http://earnestapp.com
>>>> Nearest Bus: find when the next bus is coming to your stop. 
>>>> http://goo.gl/Vcz1p
>>>> mobileAgent (for FreeAgent): get your accounts in your pocket.
>>>> http://goo.gl/IuBU
>>>> Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa
>>>> London Bike App: Find the nearest Boris Bike, and get riding! 
>>>> http://goo.gl/Icp2
>>>
>>>
>>
>>
>>
>> --
>> Nic Wise
>> t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
>> b. http://www.fastchicken.co.nz/
>>
>> Earnest: Self-employed? Track your business expenses and income.
>> http://earnestapp.com
>> Nearest Bus: find when the next bus is coming to your stop. 
>> http://goo.gl/Vcz1p
>> mobileAgent (for FreeAgent): get your accounts in your pocket.
>> http://goo.gl/IuBU
>> Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa
>> London Bike App: Find the nearest Boris Bike, and get riding! 
>> http://goo.gl/Icp2
>
>



-- 
Nic Wise
t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
b. http://www.fastchicken.co.nz/

Earnest: Self-employed? Track your business expenses and income.
http://earnestapp.com
Nearest Bus: find when the next bus is coming to your stop. http://goo.gl/Vcz1p
mobileAgent (for FreeAgent): get your accounts in your pocket.
http://goo.gl/IuBU
Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa
London Bike App: Find the nearest Boris Bike, and get riding! http://goo.gl/Icp2
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch

Reply via email to