Thanks Rui. I was looking at the master branch, my mistake. Thanks for working on removing the internal declarations, it will make life much easier when we try to extend forms.
In our Android (AppCompat) app we are getting a ArgumentException: 'jobject' must not be IntPtr.Zero when changing the icon of a ToolbarItem at runtime. Forms version is 2.2.0.45
I attached a test project. Switch to 'Page 3' and than back to 'Page 1' and click on the toggle button to get the exception.
A fix would be much appreciated!
System.ArgumentException: 'jobject' must not be IntPtr.Zero. Parameter name: jobject at Android.Runtime.JNIEnv.CallObjectMethod (IntPtr jobject, IntPtr jmethod) [0x00010] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:170 at Android.Views.View.get_Context () [0x0002d] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.Views.View.cs:4891 at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.UpdateMenu () [0x00006] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\NavigationPageRenderer.cs:643 at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.HandleToolbarItemPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00045] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\NavigationPageRenderer.cs:387 at (wrapper delegate-invoke) <Module>:invoke_void_object_PropertyChangedEventArgs (object,System.ComponentModel.PropertyChangedEventArgs) at Xamarin.Forms.BindableObject.OnPropertyChanged (System.String propertyName) [0x0000a] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:137 at Xamarin.Forms.Element.OnPropertyChanged (System.String propertyName) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\Element.cs:362 at Xamarin.Forms.BindableObject.SetValueActual (Xamarin.Forms.BindableProperty property, Xamarin.Forms.BindablePropertyContext context, System.Object value, Boolean currentlyApplying, SetValueFlags attributes, Boolean silent) [0x000f4] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:581 at Xamarin.Forms.BindableObject.SetValueCore (Xamarin.Forms.BindableProperty property, System.Object value, SetValueFlags attributes, SetValuePrivateFlags privateAttributes) [0x0014b] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:378 at Xamarin.Forms.BindableObject.SetValue (Xamarin.Forms.BindableProperty property, System.Object value, Boolean fromStyle, Boolean checkAccess) [0x0005f] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:531 at Xamarin.Forms.BindableObject.SetValue (Xamarin.Forms.BindableProperty property, System.Object value) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:83 at Xamarin.Forms.MenuItem.set_Icon (Xamarin.Forms.FileImageSource value) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\MenuItem.cs:37 at TestDroid.Page1.ToggleClicked (System.Object sender, System.EventArgs e) [0x0003a] in /Users/quadcore/Projects/TestDroid/Page1.xaml.cs:21 at Xamarin.Forms.Button.Xamarin.Forms.IButtonController.SendClicked () [0x00020] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\Button.cs:122 at Xamarin.Forms.Platform.Android.AppCompat.ButtonRenderer+ButtonClickListener.OnClick (Android.Views.View v) [0x0000b] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\ButtonRenderer.cs:274 at Android.Views.View+IOnClickListenerInvoker.n_OnClick_Landroid_view_View_ (IntPtr jnienv, IntPtr native__this, IntPtr native_v) [0x00011] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.Views.View.cs:1903 at (wrapper dynamic-method) System.Object:041a8b72-2872-4ad9-896f-b5245b1c2421 (intptr,intptr,intptr)
Already getting the Error MT2002 after updating to Form 2.2.0.45 : Failed to resolve "System.Void CoreGraphics.CGRect::.ctor(System.Single,System.Single,System.Single,System.Single)" reference from "Xamarin.iOS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065" (MT2002) (Dassault.MyFalcon.iOS).
When setting the link to "Don't link" I am getting this Error MT4134: Your application is using the 'HealthKitUI' framework, which isn't included in the iOS SDK you're using to build your app (this framework was introduced in iOS 9.3, while you're building with the iOS 9.2 SDK.) This configuration is only supported with the legacy registrar (pass --registrar:legacy as an additional mtouch argument in your project's iOS Build option to select). Alternatively select a newer SDK in your app's iOS Build options. (MT4134) (Dassault.MyFalcon.iOS).
Please note that my app is not using HealthKitUI is any way.
Please note also that I am working on a project for a really important customer and I am unable to build the project. Please Xamarin don't publish UPDATES that you have not tested
@PawelTkti said:
I have problem. After installation the newest version (pre2) all properties defined in styles override my properties in the controls. For example:
This is from April 21 and it's still not working in 2.2.0.45 and 2.3-pre3!
A workaround is to put the property before the style (yes, I'm serious): <Button Text="Need help" BackgroundColor="Black" Style="{StaticResource MainButtonStyle}" />
Usually when the keyboard appears the entry control gets moved up so it's still visible. This does not work on Android (but iOS) when using translation (TranslateTo, TranslationX/Y). See the attached test project. Forms version is 2.2.0.45.
It seems that the Master Detail Page's 'IsGestureEnabled' property changed behavior.
I was using XF 2.1.0.6529 before I updated to 2.2.0.45.
Before it was just enabling/disabling the swipe feature of the Master Detail Page to be presented or not, but now when I set the 'IsGestureEnabled' to false, it doesn't let me open the drawer even by clicking the Burger icon.
Can anyone confirm this?
I dont want swipe gesture to be enabled in android since scrolling Up or Down the Master Page seems to have conflicting gesture with left or right.
I created Bug 41926 and I hope I entered all info necessary. If not just let me know...
@rmarinho said: @FokkeVermeulen@MarkusStoebe i can't reproduce the issue, can you please submit a bug in bugzilla with a repo and point it to me so i can take a look.
@PawelTkti said:
I have problem. After installation the newest version (pre2) all properties defined in styles override my properties in the controls. For example:
This is from April 21 and it's still not working in 2.2.0.45 and 2.3-pre3!
A workaround is to put the property before the style (yes, I'm serious): <Button Text="Need help" BackgroundColor="Black" Style="{StaticResource MainButtonStyle}" />
@DerekPapworth.4183 said: @TheRealJasonSmith - Following on from my earlier post in here on issue with contextmenu not firing in ListView in Windows UWP I've done some more investigation and it appears the Cell in the ListView is not obeying the FillAndExpand or StartAndExpand in ListView and hence the contextmenu is only being triggered if tapped within the non-expanded cell limits. To check this I added background colour to my cell and as you can in attached captured pic when I tap (right click in this case as Windows UWP) on 4th cell for instance the highlight of the listview item covers complete width but cell doesn't. However same code exactly works fine in iOS, Android, Windows Phone 8.1 Silverlight but in the case of Windows UWP or Windows 8.1 I get this result. Apart from not being right, it means contextmenu won't work unless you tap inside the cell rather than just listitem which when no background colour used is difficult to tell. Any clues or is this a bug?
p.s. Just to confirm as don't have screenshots to hand, in iOS, Android and Windows Phone with same aqua background set the colour covers complete width in all listitems with exactly same code.
There was a similar sort of issue in Windows RT where the content of a List View header template wouldn't expand even though it was set to, my workaround was WidthRequest = 5000. Though this is no longer an issue in 2.2pre 2.
As a workaround you should be able to set a really wide WidthRequest and it'll just go as wide as the screen is.
I'm actually using Xamarin.Forms 2.3.0 and I had to set the WidthRequest of a View inside a Frame that is also within the row to FillAndExpand full Width.
I filed a bug so Xamarin dev team can keep track of this issue. I started experiencing this behavior in Xamarin.Forms 2.2.0.45. Apparently the ListView shows fine in XF 2.0.1.6505
Here's the bugzilla: https://bugzilla.xamarin.com/show_bug.cgi?id=42132
Hey folks, I'm having a werid issue with the recent updates. I'm Using Visual Studio Enterprise 2015 and XF 2.3
I'm using Service Stack, and everything works cool but here's when the story goes werid.
I have a REST API with service stack, and the app is the client, but when I request a method, no matter if its using POST or GET the API response is correct but when it enters the app it goes to empty with a custom property type. I know it is correct because logs on the API says so and I know it reaches the app using WireShark.
If I run the same code (client methods) in a windows forms it works as spected but running it on Xamarin.Forms it does not.
the issue happens with a custom type I created but when I use the custom type
public class DataProperty
{
protected string base64Value;
public DataProperty();
public string Value { get; }
public byte[] Get();
public DataProperty Set(byte[] data);
public static implicit operator DataProperty(byte[] data);
public static implicit operator byte[] (DataProperty PropertyValue);
}
public class DataProperty<T> : DataProperty
{
public DataProperty();
public DataProperty<T> Set(byte[] data);
public static implicit operator DataProperty<T>(byte[] data);
public static implicit operator byte[] (DataProperty<T> PropertyValue);
}
//SessionToken is a DataProperty //Id is DataProperty<long> //AId is DataProperty<double> //Iden is DataProperty<string> //ACID is long //ResponseStatus is a service stack property not filled.
As I said, if I run exactly the same code on a PCL+Windows Forms(or even console) app it works correctly but running it on PCL+Xamarin.Forms it doesn't (using emulator or phisical phone)
Hi, I have an issue with page lifecycle on Android.
I am currently using AppCompatActivity and Xamarin.Forms 2.2.0.31.
For example, when I move to Page2 from Page1, XF called OnAppearing() for Page2 and OnDisappearing() for Page1.
When I click "Back" button XF triggers Page1.OnAppearing() and Page2.OnDisappearing(). And it's fine.
But, in another case, when I go to Page2 and move application to background (Page2.OnDisappearing() called) and then move application to foreground, XF will call Page2.OnAppearing() and Page1.OnAppearing() (this is Incorrect behaviour).
After that, when I return to Page1, Page2.OnDisappearing() is called, but nothing more, and I don't know when Page1 is visible (it's also Incorrect behaviour).
@BryanHunterXam said:
Thanks for all of your reports. There was a problem with the build/packaging. The issues are now fixed. Please update to 2.2.0.45
What happened?
One of our build machines was set to beta channel and it was 'picked' by our CI to build the Nuget packages. This caused the iOS API mismatch.
Why didn't tests catch this?
Our UI tests ran on an OSX machine that was correctly set to the stable channel. We are discussing mistake-proofing guards to prevent mismatches in the future.
FYI - This bug is back in the latest build (2.3.1.113-pre3)
FYI - This bug is back in the latest build (2.3.1.113-pre3)
What made that "bad build" bad for 2.2.0 was the unintentional, surprise requirement to upgrade Xamarin to Cycle 7 after multiple pre-releases of 2.2.0 had been tied to Cycle 6.
With 2.3.1 it's a different story. The dependency on Cycle 7 for 2.3.1 is intentional and was announced in the release notes (under "important notes") :
When upgrading to Xamarin.Forms 2.3.1 (and future releases), users should upgrade their Xamarin installation to Cycle 7.
We build each new Forms versions against the current stable platform version.
Posts
Hi @DavidAllen are sure you are checking the right branch/tag on the public repo?
For example on 2.2 InvalidationTrigger is still internal ...
https://github.com/xamarin/Xamarin.Forms/blob/release-2.2.0-hf1/Xamarin.Forms.Core/InvalidationTrigger.cs
The master branch doesn't reflect the current public nugets, for that you have to check the branches 2.2 and 2.3, or the tags.
We are working on removing most of the internals, some changes have landed others are still being reviewed.
Thanks Rui. I was looking at the master branch, my mistake. Thanks for working on removing the internal declarations, it will make life much easier when we try to extend forms.
@rmarinho
that one still occurs. Do you have a fix for that?
In our Android (AppCompat) app we are getting a
ArgumentException: 'jobject' must not be IntPtr.Zero
when changing the icon of a ToolbarItem at runtime. Forms version is 2.2.0.45I attached a test project. Switch to 'Page 3' and than back to 'Page 1' and click on the toggle button to get the exception.
A fix would be much appreciated!
System.ArgumentException: 'jobject' must not be IntPtr.Zero. Parameter name: jobject at Android.Runtime.JNIEnv.CallObjectMethod (IntPtr jobject, IntPtr jmethod) [0x00010] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:170 at Android.Views.View.get_Context () [0x0002d] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.Views.View.cs:4891 at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.UpdateMenu () [0x00006] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\NavigationPageRenderer.cs:643 at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.HandleToolbarItemPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00045] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\NavigationPageRenderer.cs:387 at (wrapper delegate-invoke) <Module>:invoke_void_object_PropertyChangedEventArgs (object,System.ComponentModel.PropertyChangedEventArgs) at Xamarin.Forms.BindableObject.OnPropertyChanged (System.String propertyName) [0x0000a] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:137 at Xamarin.Forms.Element.OnPropertyChanged (System.String propertyName) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\Element.cs:362 at Xamarin.Forms.BindableObject.SetValueActual (Xamarin.Forms.BindableProperty property, Xamarin.Forms.BindablePropertyContext context, System.Object value, Boolean currentlyApplying, SetValueFlags attributes, Boolean silent) [0x000f4] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:581 at Xamarin.Forms.BindableObject.SetValueCore (Xamarin.Forms.BindableProperty property, System.Object value, SetValueFlags attributes, SetValuePrivateFlags privateAttributes) [0x0014b] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:378 at Xamarin.Forms.BindableObject.SetValue (Xamarin.Forms.BindableProperty property, System.Object value, Boolean fromStyle, Boolean checkAccess) [0x0005f] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:531 at Xamarin.Forms.BindableObject.SetValue (Xamarin.Forms.BindableProperty property, System.Object value) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\BindableObject.cs:83 at Xamarin.Forms.MenuItem.set_Icon (Xamarin.Forms.FileImageSource value) [0x00000] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\MenuItem.cs:37 at TestDroid.Page1.ToggleClicked (System.Object sender, System.EventArgs e) [0x0003a] in /Users/quadcore/Projects/TestDroid/Page1.xaml.cs:21 at Xamarin.Forms.Button.Xamarin.Forms.IButtonController.SendClicked () [0x00020] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Core\Button.cs:122 at Xamarin.Forms.Platform.Android.AppCompat.ButtonRenderer+ButtonClickListener.OnClick (Android.Views.View v) [0x0000b] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\AppCompat\ButtonRenderer.cs:274 at Android.Views.View+IOnClickListenerInvoker.n_OnClick_Landroid_view_View_ (IntPtr jnienv, IntPtr native__this, IntPtr native_v) [0x00011] in /Users/builder/data/lanes/3236/ee215fc9/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.Views.View.cs:1903 at (wrapper dynamic-method) System.Object:041a8b72-2872-4ad9-896f-b5245b1c2421 (intptr,intptr,intptr)
Already getting the Error MT2002 after updating to Form 2.2.0.45 : Failed to resolve "System.Void CoreGraphics.CGRect::.ctor(System.Single,System.Single,System.Single,System.Single)" reference from "Xamarin.iOS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065" (MT2002) (Dassault.MyFalcon.iOS).
When setting the link to "Don't link" I am getting this Error MT4134: Your application is using the 'HealthKitUI' framework, which isn't included in the iOS SDK you're using to build your app (this framework was introduced in iOS 9.3, while you're building with the iOS 9.2 SDK.) This configuration is only supported with the legacy registrar (pass --registrar:legacy as an additional mtouch argument in your project's iOS Build option to select). Alternatively select a newer SDK in your app's iOS Build options. (MT4134) (Dassault.MyFalcon.iOS).
Please note that my app is not using HealthKitUI is any way.
Please note also that I am working on a project for a really important customer and I am unable to build the project. Please Xamarin don't publish UPDATES that you have not tested
This is from April 21 and it's still not working in 2.2.0.45 and 2.3-pre3!
A workaround is to put the property before the style (yes, I'm serious):
<Button Text="Need help" BackgroundColor="Black" Style="{StaticResource MainButtonStyle}" />
Please fix this!
TapGestureRecognizer is still broken for me on android. Has anyone found a solution? I have it on an absolute layout. Worked fine before 2.2.
Has anyone found a work around?
work around for me was putting a boxview in the absolute layout and adding the gesturerecognizer to it
Usually when the keyboard appears the entry control gets moved up so it's still visible. This does not work on Android (but iOS) when using translation (TranslateTo, TranslationX/Y). See the attached test project. Forms version is 2.2.0.45.
It seems that the Master Detail Page's 'IsGestureEnabled' property changed behavior.
I was using XF 2.1.0.6529 before I updated to 2.2.0.45.
Before it was just enabling/disabling the swipe feature of the Master Detail Page to be presented or not, but now when I set the 'IsGestureEnabled' to false, it doesn't let me open the drawer even by clicking the Burger icon.
Can anyone confirm this?
I dont want swipe gesture to be enabled in android since scrolling Up or Down the Master Page seems to have conflicting gesture with left or right.
@rmarinho I've the same problem here...any Info on when this will be fixed? I can't move on working on the project if the app just keeps crashing.
@FokkeVermeulen @MarkusStoebe i can't reproduce the issue, can you please submit a bug in bugzilla with a repo and point it to me so i can take a look.
Thanks.
I created Bug 41926 and I hope I entered all info necessary. If not just let me know...
THANKS! It's working!
Xamarin please...
Thanks for the workaround @Matthew.4307 !
I'm actually using Xamarin.Forms 2.3.0 and I had to set the WidthRequest of a View inside a Frame that is also within the row to FillAndExpand full Width.
I filed a bug so Xamarin dev team can keep track of this issue. I started experiencing this behavior in Xamarin.Forms 2.2.0.45. Apparently the ListView shows fine in XF 2.0.1.6505
Here's the bugzilla:
https://bugzilla.xamarin.com/show_bug.cgi?id=42132
Hope this helps you identifying the problem.
Best Regards.
Hey folks, I'm having a werid issue with the recent updates. I'm Using Visual Studio Enterprise 2015 and XF 2.3
I'm using Service Stack, and everything works cool but here's when the story goes werid.
I have a REST API with service stack, and the app is the client, but when I request a method, no matter if its using POST or GET the API response is correct but when it enters the app it goes to empty with a custom property type. I know it is correct because logs on the API says so and I know it reaches the app using WireShark.
If I run the same code (client methods) in a windows forms it works as spected but running it on Xamarin.Forms it does not.
the issue happens with a custom type I created but when I use the custom type
Service stack json returns:
[0:] { "SessionToken": { "Value": "WFE1Au5DoIb0sEttlD3h08Xg+E+KwrZ5tFusJqP1TsSY6D6PACjcBAiub+ydX84Wa95Gu318ziDXssUnwe0fWE0L/0A6h5IcLEYk8xGxKdW3ooehjrOR/7KwEypZRcmVI6oKX75id21npQDJZP8Y4U18gBeJuuKjpckeL8b54U8=" }, "Id": { "Value": "" }, "AId": { "Value": "" }, "Iden": { "Value": "" }, "ACID": 13, "ResponseStatus": null }
//SessionToken is a DataProperty //Id is DataProperty<long> //AId is DataProperty<double> //Iden is DataProperty<string> //ACID is long //ResponseStatus is a service stack property not filled.
As I said, if I run exactly the same code on a PCL+Windows Forms(or even console) app it works correctly but running it on PCL+Xamarin.Forms it doesn't (using emulator or phisical phone)
Tried XF 2.1,2.2, 2.3.
Any ideas?
Hi, I have an issue with page lifecycle on Android.
I am currently using AppCompatActivity and Xamarin.Forms 2.2.0.31.
For example, when I move to Page2 from Page1, XF called OnAppearing() for Page2 and OnDisappearing() for Page1.
When I click "Back" button XF triggers Page1.OnAppearing() and Page2.OnDisappearing(). And it's fine.
But, in another case, when I go to Page2 and move application to background (Page2.OnDisappearing() called) and then move application to foreground, XF will call Page2.OnAppearing() and Page1.OnAppearing() (this is Incorrect behaviour).
After that, when I return to Page1, Page2.OnDisappearing() is called, but nothing more, and I don't know when Page1 is visible (it's also Incorrect behaviour).
The same issues in BugZilla: https://bugzilla.xamarin.com/show_bug.cgi?id=41322, https://bugzilla.xamarin.com/show_bug.cgi?id=40722
Do you have any ideas how to fix this?
FYI - This bug is back in the latest build (2.3.1.113-pre3)
Hi @LeoReading! Regarding your comment...
What made that "bad build" bad for 2.2.0 was the unintentional, surprise requirement to upgrade Xamarin to Cycle 7 after multiple pre-releases of 2.2.0 had been tied to Cycle 6.
With 2.3.1 it's a different story. The dependency on Cycle 7 for 2.3.1 is intentional and was announced in the release notes (under "important notes") :
We build each new Forms versions against the current stable platform version.