Quantcast
Channel: Recent Threads — Xamarin Community Forums
Viewing all 204402 articles
Browse latest View live

Visual Studio for Mac takes over 10 minutes to load solution

$
0
0

A .net core 2.0 asp.net solution with 22 projects takes over 10 minutes to open. Takes a few seconds in windows. Are there any known work-arounds?

Version 7.2 (build 636)


Button height in grid

$
0
0

Hi!

I have a problem with buttons in a grid.

This is my xaml :
<Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Button Grid.Column="0" Text="Very very looooooooong text" BackgroundColor="#FFE53C25" FontAttributes="Bold" TextColor="White"/> <Button Grid.Column="1" Text="Very very looooooooong text" BackgroundColor="#98A4AE" FontAttributes="Bold" TextColor="White"/> </Grid>
At runtime the height of the button does not change :(

How can un solve my problem?

Thanks!

background disappears on PopupWindow with ListView.

$
0
0

Hi i've run into a strange issue. I have a PopupWindow with a single ListView. The PopupWindow is just a linear layout with one ListView. The background of the linear layout is a light gray and the background of the ListView is white. If the ListView contains too many items it becomes scrollable and when the pop up is shown the background of both the ListView and LinenarLayout are transparent. If I scroll to the bottom of the list view the correct background colors reset. I have tried adding android:cacheColorHint="@android:color/transparent" and android:scrollingCache="false" with no luck. If I simply increase the height so the ListView doesn't need to scroll everything works, but there may be many items or a just few.

xml for popup window:

< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minWidth="25px"
android:minHeight="25px"
android:background="#ffbdbdbd">
< ListView
android:minWidth="25px"
android:minHeight="25px"
android:scrollingCache="false"
android:cacheColorHint="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/ListView"
android:layout_margin="5dp"
android:background="#ffffffff" />
< /LinearLayout >

code showing popup:

private void ActionButtonClicked(object sender, EventArgs args)
    {
        var button = sender as Button;

        var view = LayoutInflater.From(Activity).Inflate(Resource.Layout.PopupWindowItem, null, false);

    //PopupMenuItem is subclass of PopupWindow
        var popup = new PopupMenuItem(view, 250, 200, true);

        popup.ShowAsDropDown(button);
    }

CountDown for Xamarin.Forms

$
0
0

I am looking for an efficient way display a countdown for several items.
For example, an image and under a countdown (ex: 14 months - 3 days - 6 hours).
The page will have several images and separate countdowns underneath with time left to buy.

Type or member is obsolete (ImageSource = Device.OnPlatform)

$
0
0

I am trying to change the obsolete code from the sample code under Xamarin.Forms titles "TableView for a form" where the ImageCell is using ImageSource = Device.OnPlatform and needs to use a switch. I am getting errors when trying to change to switch like this,

switch (Device.RuntimePlatform)
{
case Device.iOS:
ImageSource.FromFile("Images/waterfront.jpg");
break;
case Device.Android:
ImageSource.FromFile("waterfront.jpg");
break;
case Device.WinPhone:
ImageSource.FromFile("Images/waterfront.jpg");
break;
default:
ImageSource.FromFile("Images/waterfront.jpg");
break;
}

which is replacing the code in the sample below between the // START REPLACE and // END REPLACE.

using System;
using System.Collections.Generic;
using System.Text;

using Xamarin.Forms;

namespace MiddleMeeter
{
class SearchPage : ContentPage
{
public SearchPage()
{
Label header = new Label
{
Text = "TableView for a form",
FontSize = 30,
FontAttributes = FontAttributes.Bold,
HorizontalOptions = LayoutOptions.Center
};

        TableView tableView = new TableView
        {
            Intent = TableIntent.Form,
            Root = new TableRoot("TableView Title")
            {
                new TableSection("Table Section")
                {
                    new TextCell
                    {
                        Text = "Text Cell",
                        Detail = "With Detail Text",
                    },
                    new ImageCell
                    {

// START REPLACE /////////////////////////////////////////////////////////////

                       ** ImageSource = Device.OnPlatform(ImageSource.FromUri(new Uri("SOME URI IS HERE, REMOVED FOR SAVING")),
                                              ImageSource.FromFile("ide_xamarin_studio.png"),
                                              ImageSource.FromFile("Images/ide-xamarin-studio.png")),

// END REPLACE //////////////////////////////////////////////////////////////
Text = "Image Cell",
Detail = "With Detail Text",
},
new SwitchCell
{
Text = "Switch Cell"
},
new EntryCell
{
Label = "Entry Cell",
Placeholder = "Type text here"
},
new ViewCell
{
View = new Label
{
Text = "A View Cell can be anything you want!"
}
}
}
}
};

        // Build the page.
        this.Content = new StackLayout
        {
            Children =
            {
                header,
                tableView
            }
        };
    }
}

}

How to execute code on incoming calls?

$
0
0

I'am trying to build an app that runs on background and activates on incoming calls, after some research i found out i have to do it nativelly but my code is doing nothing at all.

If there is a way to do it on the PCL project please let me know.

here is my actual code:

[Activity(Label = "Teste2", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
    {

        public static Context AppContext;

        protected override void OnCreate(Bundle bundle)
        {
            TabLayoutResource = Resource.Layout.Tabbar;
            ToolbarResource = Resource.Layout.Toolbar;

            base.OnCreate(bundle);

            global::Xamarin.Forms.Forms.Init(this, bundle);
            LoadApplication(new App());

            AppContext = this.ApplicationContext;

            StartPushService();
        }

        public static void StartPushService()
        {
            AppContext.StartService(new Intent(AppContext, typeof(Services.BackgroundService)));
            if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Kitkat)
            {

                PendingIntent pintent = PendingIntent.GetService(AppContext, 0, new Intent(AppContext, typeof(Services.BackgroundService)), 0);
                AlarmManager alarm = (AlarmManager)AppContext.GetSystemService(Context.AlarmService);
                alarm.Cancel(pintent);
            }
        }

        public static void StopPushService()
        {
            AppContext.StopService(new Intent(AppContext, typeof(Services.BackgroundService)));

            PendingIntent pintent = PendingIntent.GetService(AppContext, 0, new Intent(AppContext, typeof(Services.BackgroundService)), 0);
            AlarmManager alarm = (AlarmManager)AppContext.GetSystemService(Context.AlarmService);
            alarm.Cancel(pintent);
        }
    }

Service:

[Service(Name = "com.xamarin.Teste2.BackgroundService")]
    public class BackgroundService : Service
    {
        // Magical code that makes the service do wonderful things.
        public override void OnCreate()
        {
            base.OnCreate();

        }

        public override StartCommandResult OnStartCommand(Android.Content.Intent intent, StartCommandFlags flags, int startId)
        {

            return StartCommandResult.Sticky;
        }

        public override Android.OS.IBinder OnBind(Android.Content.Intent intent)
        {

            return null;
        }


        public override void OnDestroy()
        {
            base.OnDestroy();
        }
    }

and BroadcastReceiver:

[BroadcastReceiver]
    [IntentFilter(new[] { Android.Content.Intent.ActionAnswer })]
    public class CallReceiver : BroadcastReceiver
    {
        public override void OnReceive(Context context, Intent intent)
        {
            Toast.MakeText(context, "Incoming call from someone", ToastLength.Short).Show();
            System.Console.WriteLine("Incoming call from someone");
        }
    }

HW kbd: Failed to set (null) as keyboard focus - App immediately terminates on startup

$
0
0

I have an app that works fine for the most part. But once it starts having this problem it does not start. I have tried force quitting the app, restarting the ipad. I have to remove and reinstall the app to get it to work again. Here are the device logs for the app. Has anyone encountered this issue before?

Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: copyTokenForDomain push.apple.com (null)
Oct 16 16:51:42 ipadmediaserverd(CoreMedia)[24] : -CMSessionMgr- cmsmHandleApplicationStateChange: CMSession: Client com.xxx.yyyy.zzzzz with pid '391' is now Foreground Running. Background entitlement: NO
Oct 16 16:51:42 ipadsharingd[53] : SystemUI unknown identifier: 'com.xxx.yyyy.zzzzz'
Oct 16 16:51:42 ipadsharingd[53] : SystemUI changed: 0x10 -> 0x0
Oct 16 16:51:42 ipadSpringBoard[49] : Dismissing banner for notification (null)
Oct 16 16:51:42 ipadSpringBoard(CoreMotion)[49] : Stopping device motion, mode=0x
Oct 16 16:51:42 ipadAppName[391] : Found new TLS offset at 224
Oct 16 16:51:42 Hillsdale-iPad apsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: processing 0 incoming low priority messages for com.brightree.hhho.mobile
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: _schedulePendingWorkUpdate
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: flush any pending work that ALS told us to queue for its managed topics {(
)}, processMode userToken
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: received topic update for Normal pretend NO but there is no change.
Oct 16 16:51:42 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: FBSDisplayLayoutUpdateHandler: update start
Oct 16 16:51:42 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: FBSDisplayLayoutUpdateHandler: app (UIApplicationElement 1 hasKeyboardFocus 0)
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: 4. app got notification state: pid=391 for
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: notifyAboutFrontAppChange: notifyAboutFrontAppChange : app: ; pid: 391; net: 0
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: 5. app got notification state: new counter=227
Oct 16 16:51:43 ipadCommCenter[71] : #I BundleID: is a foreground app
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : 391 com.xxx.yyyy.zzzzz: ForegroundRunning (most elevated: ForegroundRunning)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Entry, display name com.xxx.yyyy.zzzzz uuid 1F817C66-AE2D-3A35-8E0E-A00479640B01 pid 391 isFront 1
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Check for bundle name com.xxx.yyyy.zzzzz returns 0
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : app name com.xxx.yyyy.zzzzz isForeground 1 hasForegroundApps 1, current idea of foreground 0 disp (null)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Going to Foreground, new flags 0x0, initial value 0x0, enabled 0
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Continue with bundle name com.xxx.yyyy.zzzzz, is front 1
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : com.xxx.yyyy.zzzzz: Foreground: true
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Set appCompactState object 0 for key com.xxx.yyyy.zzzzz
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM2 foreground (current/proposed/state) in = (0/1/2)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM2 foreground (current/state) out = (1/1)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Current state: idle, changed: systemForeground to 1 for net type 0, eligible for alerted but constraints unsatisfied (1,0,0,0)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Current state: idle, changed: systemForeground to 1 for net type 0, ineligible for committed as nil pred, wifi (0x0) cell (0x0)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Relays: cell (active-no/primary-no/knowngood-no/rssithresh-ok/txthresh-ok/arp-ok/dns-ok/tcp-ok/lqm:-2/advisory:0) wifi (active/primary/knowngood/rssithresh-ok/txthresh-ok/arp-ok/dns-ok/tcp-ok/lqm:100/advisory:7)
Oct 16 16:51:43 ipadAppName[391] : Profiling: True
Oct 16 16:51:43 ipadAppName[391] : 10-16-2017 16:51:43:3023 EDT: 1: [Debug] Finished AppDelegate.SetConfigurationManagerDefaults
Oct 16 16:51:43 ipadAppName[391] : Warning: PLCrashReporter has pending crash report
Oct 16 16:51:43 ipadSpringBoard(KeyboardArbiter)[49] : HW kbd: Failed to set (null) as keyboard focus
Oct 16 16:51:43 ipadSpringBoard(FrontBoard)[49] : exited voluntarily.
Oct 16 16:51:43 ipadSpringBoard[49] : Process exited: ->
Oct 16 16:51:43 ipadassertiond[59] : Deleted job with label: UIKitApplication:com.xxx.yyyy.zzzzz[0x7976][59]
Oct 16 16:51:43 ipadassertiond[59] : Submitted job with label: UIKitApplication:com.xxx.yyyy.zzzzz[0x4df4][59]

Add some different elements to UIScrollView

$
0
0

Hello All,

As I'm beginner in Xamarin.IOS, I need you suggestion about what I want to do in a ViewController in IOS project.

I'd like to add UIImageView, some UILabel s and two UITextView in a View. As the texts are long, I have to add them in a UIScrollView.

I've created my ViewController like this :

public class PostViewController : UIViewController
    {
        UIScrollView scrollView;

        private UIImageView _postHeaderImage;

        private UILabel _postTopTag;
        private UILabel _postTitle;

        private UILabel _sourceAndpublicationDate;

        private UITextView _postSummary;
        private UITextView _postText;

        private UIImage image;

        public PostViewController()
        {
            View.BackgroundColor = UIColor.White;
        }

        public override void DidReceiveMemoryWarning()
        {
            base.DidReceiveMemoryWarning();
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();



            // ScrollView
            scrollView = new UIScrollView();

            image = UIImage.FromFile("Article1.jpg");
            _postHeaderImage = new UIImageView(UIImage.FromBundle("Article1.jpg"));


            _postTopTag = InitUILabel("Santé", fontSize: 12, color: Colors.TextGrayColor, alignment: UITextAlignment.Left, bold: true);
            _postTopTag.AttributedText = new NSAttributedString("Santé", underlineStyle: NSUnderlineStyle.Single);

            _postTitle = InitUILabel("Alaska - Une «éponge miracle» contre le cancer ", fontSize: 26, bold: true, alignment: UITextAlignment.Left);


            _sourceAndpublicationDate = InitUILabel("www.letelegramme.fr" + " - " + "Depuis 23 Heure(s)", fontSize: 13, alignment: UITextAlignment.Left);

            _postSummary = new UITextView();
            _postSummary.Editable = false;
            _postSummary.ScrollEnabled = false;
            _postSummary.Text = "La « Latrunculia austini » vit à une profondeur variant de 70 à 220 m, dans des zones difficiles d'accès.";



            image = UIImage.FromFile("Article1.jpg");
            _postHeaderImage = new UIImageView(UIImage.FromBundle("Article1.jpg"));


            _postText = new UITextView();
            _postText.Editable = false;
            _postText.ScrollEnabled = false;
            _postText.Text = @"«La molécule la plus active contre le cancer du pancréas».
Des chercheurs ont découvert, en Alaska (États-Unis), qu'une petite éponge des profondeurs possède une composition chimique capable de traiter cette tumeur parmi les plus agressives.
Une petite éponge verte, découverte dans les eaux glacées et sombres au large de l'Alaska, pourrait offrir la première arme efficace contre le cancer du pancréas, une tumeur agressive face à laquelle la médecine a peu de recours.

« Personne ne regarde cette éponge en se disant c'est une éponge miracle, mais elle pourrait l'être », s'exclame Bob Stone, chercheur au Centre scientifique de la pêche d'Alaska de l'Agence américaine océanique et atmosphérique (NOAA). Il a été le premier à découvrir cette éponge de la taille d'une balle de golfe, baptisée « Latrunculia austini », en 2005, lors d'une expédition d'exploration des écosystèmes sous-marins.

Des tests en laboratoire ont révélé que plusieurs de ses molécules détruisent sélectivement les cellules cancéreuses pancréatiques, a indiqué Mark Hamann, un chercheur de la faculté de médecine de l'Université de Caroline du Sud, en collaboration avec Fred Valeriote, de l'Institut Henry Ford du cancer, à Detroit. « C'est sans aucun doute la molécule la plus active contre le cancer du pancréas que nous voyons », se réjouit Mark Hamman.";

            scrollView.AddSubviews(_postHeaderImage, _postTopTag, _postTitle, _sourceAndpublicationDate, _postSummary, _postText);

            View.AddSubview(scrollView);
        }

        public override void ViewDidLayoutSubviews()
        {
            var frameWidth = View.Frame.Width ;

            scrollView.Frame = new CoreGraphics.CGRect(0, 0, this.View.Bounds.Size.Width, 5000);
            scrollView.ContentSize = scrollView.Frame.Size; // This may not be what you actually want, but what you had before was certainly wrong.

            _postHeaderImage.Frame = new CoreGraphics.CGRect(0, 0, View.Frame.Width, (View.Frame.Width * image.Size.Height / image.Size.Width));

            float width = (float)(View.Frame.Size.Width - 40);




            _postTopTag.Frame = new CGRect(10, _postHeaderImage.Frame.Size.Height, frameWidth, 20);

            _postTitle.Frame = new CGRect(10, _postTopTag.Frame.Y + _postTopTag.Frame.Size.Height, frameWidth, 80);

            _sourceAndpublicationDate.Frame = new CGRect(10,_postTitle.Frame.Y + _postTitle.Frame.Size.Height, frameWidth, 20);


            SizeF size = (SizeF)((NSString)_postSummary.Text).StringSize(_postSummary.Font, constrainedToSize: new SizeF(width, (float)View.Frame.Size.Height),
                    lineBreakMode: UILineBreakMode.WordWrap);
            _postSummary.Frame = new CGRect(10, _sourceAndpublicationDate.Frame.Y + _sourceAndpublicationDate.Frame.Size.Height, size.Width, size.Height);


            size = (SizeF)((NSString)_postText.Text).StringSize(_postText.Font, constrainedToSize: new SizeF(width, (float)View.Frame.Size.Height),
                    lineBreakMode: UILineBreakMode.WordWrap);

            _postText.Frame = new CGRect(10, _postSummary.Frame.Y + _postSummary.Frame.Size.Height, size.Width, size.Height);


        }


        public static UILabel InitUILabel(string text, int? color = null, UITextAlignment? alignment = null, nfloat? fontSize = null, bool? bold = false)
        {
            UILabel _label = new UILabel();
            _label.Text = text;
            _label.TextColor = Colors.FromHex(color == null ? Colors.MainColor : color.Value);
            _label.TextAlignment = (alignment == null ? UITextAlignment.Center : alignment.Value);
            _label.LineBreakMode = UILineBreakMode.WordWrap;
            _label.Lines = 0;
            if (fontSize != null && !bold.Value)
                _label.Font = UIFont.SystemFontOfSize(fontSize.Value);
            else if (fontSize != null && bold.Value)
                _label.Font = UIFont.BoldSystemFontOfSize(fontSize.Value);
            else if (bold.Value)
                _label.Font = UIFont.BoldSystemFontOfSize(14f);

            return _label;

        }

    }

If you run the program, you will see that I have a big problem with size of my UIScrollView and UITextView.

Do you have any suggestion for me for adding these elements in UIScrollView ??

Thanks a lot :)


Type or member is obsolete (ImageSource = Device.OnPlatform)

$
0
0

I am trying to change the obsolete code from the sample code under Xamarin.Forms titles "TableView for a form" where the ImageCell is using ImageSource = Device.OnPlatform and needs to use a switch. I am getting errors when trying to change to switch like this,

switch (Device.RuntimePlatform)
{
case Device.iOS:
ImageSource.FromFile("Images/waterfront.jpg");
break;
case Device.Android:
ImageSource.FromFile("waterfront.jpg");
break;
case Device.WinPhone:
ImageSource.FromFile("Images/waterfront.jpg");
break;
default:
ImageSource.FromFile("Images/waterfront.jpg");
break;
}

which is replacing the code in the sample below between the // START REPLACE and // END REPLACE.

using System;
using System.Collections.Generic;
using System.Text;

using Xamarin.Forms;

namespace MiddleMeeter
{
class SearchPage : ContentPage
{
public SearchPage()
{
Label header = new Label
{
Text = "TableView for a form",
FontSize = 30,
FontAttributes = FontAttributes.Bold,
HorizontalOptions = LayoutOptions.Center
};

        TableView tableView = new TableView
        {
            Intent = TableIntent.Form,
            Root = new TableRoot("TableView Title")
            {
                new TableSection("Table Section")
                {
                    new TextCell
                    {
                        Text = "Text Cell",
                        Detail = "With Detail Text",
                    },
                    new ImageCell
                    {

// START REPLACE /////////////////////////////////////////////////////////////

                       ** ImageSource = Device.OnPlatform(ImageSource.FromUri(new Uri("SOME URI IS HERE, REMOVED FOR SAVING")),
                                              ImageSource.FromFile("ide_xamarin_studio.png"),
                                              ImageSource.FromFile("Images/ide-xamarin-studio.png")),

// END REPLACE //////////////////////////////////////////////////////////////
Text = "Image Cell",
Detail = "With Detail Text",
},
new SwitchCell
{
Text = "Switch Cell"
},
new EntryCell
{
Label = "Entry Cell",
Placeholder = "Type text here"
},
new ViewCell
{
View = new Label
{
Text = "A View Cell can be anything you want!"
}
}
}
}
};

        // Build the page.
        this.Content = new StackLayout
        {
            Children =
            {
                header,
                tableView
            }
        };
    }
}

}

HW kbd: Failed to set (null) as keyboard focus - App immediately terminates on startup

$
0
0

I have an app that works fine for the most part. But once it starts having this problem it does not start. I have tried force quitting the app, restarting the ipad. I have to remove and reinstall the app to get it to work again. Here are the device logs for the app. Has anyone encountered this issue before?

Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: copyTokenForDomain push.apple.com (null)
Oct 16 16:51:42 ipadmediaserverd(CoreMedia)[24] : -CMSessionMgr- cmsmHandleApplicationStateChange: CMSession: Client com.xxx.yyyy.zzzzz with pid '391' is now Foreground Running. Background entitlement: NO
Oct 16 16:51:42 ipadsharingd[53] : SystemUI unknown identifier: 'com.xxx.yyyy.zzzzz'
Oct 16 16:51:42 ipadsharingd[53] : SystemUI changed: 0x10 -> 0x0
Oct 16 16:51:42 ipadSpringBoard[49] : Dismissing banner for notification (null)
Oct 16 16:51:42 ipadSpringBoard(CoreMotion)[49] : Stopping device motion, mode=0x
Oct 16 16:51:42 ipadAppName[391] : Found new TLS offset at 224
Oct 16 16:51:42 Hillsdale-iPad apsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: processing 0 incoming low priority messages for com.brightree.hhho.mobile
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: _schedulePendingWorkUpdate
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: flush any pending work that ALS told us to queue for its managed topics {(
)}, processMode userToken
Oct 16 16:51:42 ipadapsd(PersistentConnection)[79] : 2017-10-16 16:51:42 -0400 apsd[79]: received topic update for Normal pretend NO but there is no change.
Oct 16 16:51:42 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: FBSDisplayLayoutUpdateHandler: update start
Oct 16 16:51:42 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: FBSDisplayLayoutUpdateHandler: app (UIApplicationElement 1 hasKeyboardFocus 0)
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: 4. app got notification state: pid=391 for
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: notifyAboutFrontAppChange: notifyAboutFrontAppChange : app: ; pid: 391; net: 0
Oct 16 16:51:43 ipadCommCenter[71] : #I CSIAppInfo.AppObserver: observe_block_invoke: 5. app got notification state: new counter=227
Oct 16 16:51:43 ipadCommCenter[71] : #I BundleID: is a foreground app
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : 391 com.xxx.yyyy.zzzzz: ForegroundRunning (most elevated: ForegroundRunning)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Entry, display name com.xxx.yyyy.zzzzz uuid 1F817C66-AE2D-3A35-8E0E-A00479640B01 pid 391 isFront 1
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Check for bundle name com.xxx.yyyy.zzzzz returns 0
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : app name com.xxx.yyyy.zzzzz isForeground 1 hasForegroundApps 1, current idea of foreground 0 disp (null)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Going to Foreground, new flags 0x0, initial value 0x0, enabled 0
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Continue with bundle name com.xxx.yyyy.zzzzz, is front 1
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : com.xxx.yyyy.zzzzz: Foreground: true
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : Set appCompactState object 0 for key com.xxx.yyyy.zzzzz
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM2 foreground (current/proposed/state) in = (0/1/2)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM2 foreground (current/state) out = (1/1)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Current state: idle, changed: systemForeground to 1 for net type 0, eligible for alerted but constraints unsatisfied (1,0,0,0)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Current state: idle, changed: systemForeground to 1 for net type 0, ineligible for committed as nil pred, wifi (0x0) cell (0x0)
Oct 16 16:51:43 ipadsymptomsd(SymptomEvaluator)[109] : CFSM Relays: cell (active-no/primary-no/knowngood-no/rssithresh-ok/txthresh-ok/arp-ok/dns-ok/tcp-ok/lqm:-2/advisory:0) wifi (active/primary/knowngood/rssithresh-ok/txthresh-ok/arp-ok/dns-ok/tcp-ok/lqm:100/advisory:7)
Oct 16 16:51:43 ipadAppName[391] : Profiling: True
Oct 16 16:51:43 ipadAppName[391] : 10-16-2017 16:51:43:3023 EDT: 1: [Debug] Finished AppDelegate.SetConfigurationManagerDefaults
Oct 16 16:51:43 ipadAppName[391] : Warning: PLCrashReporter has pending crash report
Oct 16 16:51:43 ipadSpringBoard(KeyboardArbiter)[49] : HW kbd: Failed to set (null) as keyboard focus
Oct 16 16:51:43 ipadSpringBoard(FrontBoard)[49] : exited voluntarily.
Oct 16 16:51:43 ipadSpringBoard[49] : Process exited: ->
Oct 16 16:51:43 ipadassertiond[59] : Deleted job with label: UIKitApplication:com.xxx.yyyy.zzzzz[0x7976][59]
Oct 16 16:51:43 ipadassertiond[59] : Submitted job with label: UIKitApplication:com.xxx.yyyy.zzzzz[0x4df4][59]

Add some different elements to UIScrollView

$
0
0

Hello All,

As I'm beginner in Xamarin.IOS, I need you suggestion about what I want to do in a ViewController in IOS project.

I'd like to add UIImageView, some UILabel s and two UITextView in a View. As the texts are long, I have to add them in a UIScrollView.

I've created my ViewController like this :

public class PostViewController : UIViewController
    {
        UIScrollView scrollView;

        private UIImageView _postHeaderImage;

        private UILabel _postTopTag;
        private UILabel _postTitle;

        private UILabel _sourceAndpublicationDate;

        private UITextView _postSummary;
        private UITextView _postText;

        private UIImage image;

        public PostViewController()
        {
            View.BackgroundColor = UIColor.White;
        }

        public override void DidReceiveMemoryWarning()
        {
            base.DidReceiveMemoryWarning();
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();



            // ScrollView
            scrollView = new UIScrollView();

            image = UIImage.FromFile("Article1.jpg");
            _postHeaderImage = new UIImageView(UIImage.FromBundle("Article1.jpg"));


            _postTopTag = InitUILabel("Santé", fontSize: 12, color: Colors.TextGrayColor, alignment: UITextAlignment.Left, bold: true);
            _postTopTag.AttributedText = new NSAttributedString("Santé", underlineStyle: NSUnderlineStyle.Single);

            _postTitle = InitUILabel("Alaska - Une «éponge miracle» contre le cancer ", fontSize: 26, bold: true, alignment: UITextAlignment.Left);


            _sourceAndpublicationDate = InitUILabel("www.letelegramme.fr" + " - " + "Depuis 23 Heure(s)", fontSize: 13, alignment: UITextAlignment.Left);

            _postSummary = new UITextView();
            _postSummary.Editable = false;
            _postSummary.ScrollEnabled = false;
            _postSummary.Text = "La « Latrunculia austini » vit à une profondeur variant de 70 à 220 m, dans des zones difficiles d'accès.";



            image = UIImage.FromFile("Article1.jpg");
            _postHeaderImage = new UIImageView(UIImage.FromBundle("Article1.jpg"));


            _postText = new UITextView();
            _postText.Editable = false;
            _postText.ScrollEnabled = false;
            _postText.Text = @"«La molécule la plus active contre le cancer du pancréas».
Des chercheurs ont découvert, en Alaska (États-Unis), qu'une petite éponge des profondeurs possède une composition chimique capable de traiter cette tumeur parmi les plus agressives.
Une petite éponge verte, découverte dans les eaux glacées et sombres au large de l'Alaska, pourrait offrir la première arme efficace contre le cancer du pancréas, une tumeur agressive face à laquelle la médecine a peu de recours.

« Personne ne regarde cette éponge en se disant c'est une éponge miracle, mais elle pourrait l'être », s'exclame Bob Stone, chercheur au Centre scientifique de la pêche d'Alaska de l'Agence américaine océanique et atmosphérique (NOAA). Il a été le premier à découvrir cette éponge de la taille d'une balle de golfe, baptisée « Latrunculia austini », en 2005, lors d'une expédition d'exploration des écosystèmes sous-marins.

Des tests en laboratoire ont révélé que plusieurs de ses molécules détruisent sélectivement les cellules cancéreuses pancréatiques, a indiqué Mark Hamann, un chercheur de la faculté de médecine de l'Université de Caroline du Sud, en collaboration avec Fred Valeriote, de l'Institut Henry Ford du cancer, à Detroit. « C'est sans aucun doute la molécule la plus active contre le cancer du pancréas que nous voyons », se réjouit Mark Hamman.";

            scrollView.AddSubviews(_postHeaderImage, _postTopTag, _postTitle, _sourceAndpublicationDate, _postSummary, _postText);

            View.AddSubview(scrollView);
        }

        public override void ViewDidLayoutSubviews()
        {
            var frameWidth = View.Frame.Width ;

            scrollView.Frame = new CoreGraphics.CGRect(0, 0, this.View.Bounds.Size.Width, 5000);
            scrollView.ContentSize = scrollView.Frame.Size; // This may not be what you actually want, but what you had before was certainly wrong.

            _postHeaderImage.Frame = new CoreGraphics.CGRect(0, 0, View.Frame.Width, (View.Frame.Width * image.Size.Height / image.Size.Width));

            float width = (float)(View.Frame.Size.Width - 40);




            _postTopTag.Frame = new CGRect(10, _postHeaderImage.Frame.Size.Height, frameWidth, 20);

            _postTitle.Frame = new CGRect(10, _postTopTag.Frame.Y + _postTopTag.Frame.Size.Height, frameWidth, 80);

            _sourceAndpublicationDate.Frame = new CGRect(10,_postTitle.Frame.Y + _postTitle.Frame.Size.Height, frameWidth, 20);


            SizeF size = (SizeF)((NSString)_postSummary.Text).StringSize(_postSummary.Font, constrainedToSize: new SizeF(width, (float)View.Frame.Size.Height),
                    lineBreakMode: UILineBreakMode.WordWrap);
            _postSummary.Frame = new CGRect(10, _sourceAndpublicationDate.Frame.Y + _sourceAndpublicationDate.Frame.Size.Height, size.Width, size.Height);


            size = (SizeF)((NSString)_postText.Text).StringSize(_postText.Font, constrainedToSize: new SizeF(width, (float)View.Frame.Size.Height),
                    lineBreakMode: UILineBreakMode.WordWrap);

            _postText.Frame = new CGRect(10, _postSummary.Frame.Y + _postSummary.Frame.Size.Height, size.Width, size.Height);


        }


        public static UILabel InitUILabel(string text, int? color = null, UITextAlignment? alignment = null, nfloat? fontSize = null, bool? bold = false)
        {
            UILabel _label = new UILabel();
            _label.Text = text;
            _label.TextColor = Colors.FromHex(color == null ? Colors.MainColor : color.Value);
            _label.TextAlignment = (alignment == null ? UITextAlignment.Center : alignment.Value);
            _label.LineBreakMode = UILineBreakMode.WordWrap;
            _label.Lines = 0;
            if (fontSize != null && !bold.Value)
                _label.Font = UIFont.SystemFontOfSize(fontSize.Value);
            else if (fontSize != null && bold.Value)
                _label.Font = UIFont.BoldSystemFontOfSize(fontSize.Value);
            else if (bold.Value)
                _label.Font = UIFont.BoldSystemFontOfSize(14f);

            return _label;

        }

    }

If you run the program, you will see that I have a big problem with size of my UIScrollView and UITextView.

Do you have any suggestion for me for adding these elements in UIScrollView ??

Thanks a lot :)

How to execute code on incoming calls?

$
0
0

I'am trying to build an app that runs on background and activates on incoming calls, after some research i found out i have to do it nativelly but my code is doing nothing at all.

If there is a way to do it on the PCL project please let me know.

here is my actual code:

[Activity(Label = "Teste2", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
    {

        public static Context AppContext;

        protected override void OnCreate(Bundle bundle)
        {
            TabLayoutResource = Resource.Layout.Tabbar;
            ToolbarResource = Resource.Layout.Toolbar;

            base.OnCreate(bundle);

            global::Xamarin.Forms.Forms.Init(this, bundle);
            LoadApplication(new App());

            AppContext = this.ApplicationContext;

            StartPushService();
        }

        public static void StartPushService()
        {
            AppContext.StartService(new Intent(AppContext, typeof(Services.BackgroundService)));
            if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Kitkat)
            {

                PendingIntent pintent = PendingIntent.GetService(AppContext, 0, new Intent(AppContext, typeof(Services.BackgroundService)), 0);
                AlarmManager alarm = (AlarmManager)AppContext.GetSystemService(Context.AlarmService);
                alarm.Cancel(pintent);
            }
        }

        public static void StopPushService()
        {
            AppContext.StopService(new Intent(AppContext, typeof(Services.BackgroundService)));

            PendingIntent pintent = PendingIntent.GetService(AppContext, 0, new Intent(AppContext, typeof(Services.BackgroundService)), 0);
            AlarmManager alarm = (AlarmManager)AppContext.GetSystemService(Context.AlarmService);
            alarm.Cancel(pintent);
        }
    }

Service:

[Service(Name = "com.xamarin.Teste2.BackgroundService")]
    public class BackgroundService : Service
    {
        // Magical code that makes the service do wonderful things.
        public override void OnCreate()
        {
            base.OnCreate();

        }

        public override StartCommandResult OnStartCommand(Android.Content.Intent intent, StartCommandFlags flags, int startId)
        {

            return StartCommandResult.Sticky;
        }

        public override Android.OS.IBinder OnBind(Android.Content.Intent intent)
        {

            return null;
        }


        public override void OnDestroy()
        {
            base.OnDestroy();
        }
    }

and BroadcastReceiver:

[BroadcastReceiver]
    [IntentFilter(new[] { Android.Content.Intent.ActionAnswer })]
    public class CallReceiver : BroadcastReceiver
    {
        public override void OnReceive(Context context, Intent intent)
        {
            Toast.MakeText(context, "Incoming call from someone", ToastLength.Short).Show();
            System.Console.WriteLine("Incoming call from someone");
        }
    }

Problem with Word Wrapping with Xamarin.Forms.Label

$
0
0

Hi,
I've just spent the last 5 hours trying to figure out how to do correct word wrapping. I've search this forum, stackoverflow, etc .. but I just cannot figure it out.
Is it possible that the word-wrapping uses some kind of thesaurus or dictionary to detect "real" words ? See the following very simple XAML:

<?xml version="1.0" encoding="utf-8" ?>

<Label Text="Please enter your own pincode to log in. Click 'forgot pincode' to reset and enter a new pincode."
        HorizontalTextAlignment="Start"  LineBreakMode="WordWrap" FontSize="30" HorizontalOptions="StartAndExpand" />

The first label, using english, is correctly wrapped. The second label, using dutch, is not (see attached screenshot). Any ideas ? Since my app is english/french/dutch, this really is a big problem :(

Kind regards,
Sven.

iPhone X and safe margins with Xamarin Forms

$
0
0

Hi!

I have finished my app, but I have tested it with the iPhone X simulator and I'm totally out of the safe margins.

I'm searching for info everywhere, but I can't find anything specific to that.

I have alleviated the problem using always a NavigationBar, but the problem still persists if I put the device in landscape mode.

Does someone know how to apply extra margins if necessary with the iPhone X?

Thanks!

How to import Facebook-SDK packages in Xamarin forms

$
0
0

Hello,
I'm currently developing an Xamarin Forms app that needs to authenticate users, using Facebook.
However, I'm having a hard time figuring out the steps to import and use the Facebook-SDK in my project.

My question is: How do I import the following code in point 6 to my Xamarin forms project?

I've already added the Facebook SDK using Gradle extention for Visual Studio 2017.
Nonetheless, I cant figure out point 6

Import the Facebook SDK

To use the Facebook SDK in a project, add it as a build dependency and import the Facebook SDK packages.

Important: If you're adding the SDK to an existing project, start at step 3.

  1. Go to Android Studio | New Project | Minimum SDK.
  2. Select API 15: Android 4.0.3 (IceCreamSandwich) or higher and create your new project.
  3. In your project, open your_app | Gradle Scripts | build.gradle (Project) and add the following repository to the buildscript { repositories {}} section to >download the SDK from the Maven Central Repository:
  • mavenCentral()
  1. In your project, open your_app | Gradle Scripts | build.gradle (Module: app) and add the following compile statement to the dependencies{} section to >compile the latest version of the SDK:
    compile 'com.facebook.android:facebook-android-sdk:[4,5)'
  2. Build your project.
  3. Add the following statements to import the Facebook SDK packages:
  • import com.facebook.FacebookSdk;
  • import com.facebook.appevents.AppEventsLogger;

Thanks


how to ensure backward-compatibilty in a xamarin form application?

$
0
0

How do i make sure my app can run on android devices below Lollipop( version 4.03 to 4.42). I watched a xamarin university video that says xamarin forms supports android version 4.03(ice-cream sandwich) and upwards. I also read about runtime checks and feel like this might be the answer to my problem, but how can i write runtime checks for android when basically all my ui and logic is contained in the PCL project?

Bug in Label.LineBreakMode ?

$
0
0

Hi,

I'm having a lot of trouble to display text in my application with correct wordwrapping (LineBreakMode.WordWrap) . If I set the Label.Text directly in the XAML, there is no problem, it shows correctly. But if I take the same text, assign it to a variable in my ViewModel, and then databind the Label.Text to this variable, all of a sudden, the WordWrap is ignored, and it uses what looks like CharacterWrap. (But if i set it to truncation, it does truncate !)

I was going to add an image, but I'm getting "You have to be around for a little while longer before you can post links."

(Although I posted this message already over a year ago : forums.xamarin.com/discussion/75839/problem-with-word-wrapping-with-xamarin-forms-label - how long do I have to wait to be able to post an image ?)

any ideas ? This is with the latest Xamarin.Forms nuget, and I get it for both iOS and Android ...

How do i solve failed redirect for oauth

$
0
0

I've followed the Xamarin forms tutorial for making use of oauth and identity providers and downloaded the repo. Running the code as is with the provided client ID on the scheme interceptor works fine but changing to my id from the google console keeps redirecting to google.com even though the rest of the OnAuthCompleted method gets executed.

Connection Refused when trying to postAsync with restful api

$
0
0

I am trying to do an api post from xamarin android app but keep getting Connection refused error. I have enabled internet permissions in manifest and I can access api url from device/emulator web browser. I have also tested this code with a wpf application and is recieved by api so the calling code is correct. it is definately an emulator/xamarin issue

async void RegistrationFrom(object sender, EventArgs args)
{
try
{

    System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
    DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(UserRegistration));



    UserRegistration user = new UserRegistration();

    user.FirstName = UserName.Text;
    user.LastName = LastName.Text;
    user.Username = UserName.Text;
    user.Password = Password.Text;
    user.PostCode = PostCode.Text;
    user.Email = Email.Text;

    MemoryStream stream1 = new MemoryStream();
    jsonSerializer.WriteObject(stream1, user);
    stream1.Position = 0;
    StreamReader sr = new StreamReader(stream1);
    var content = sr;
    string json = sr.ReadToEnd();
    StringContent jsonContent = new StringContent(json, Encoding.UTF8, "application/json");

    HttpResponseMessage response = await client.PostAsync("httpIPaddressWithPortnumber(cant post links)/api/Home", jsonContent);
}
catch(Exception e)
{
    Console.WriteLine(e.ToString());
}

}

stack trace:

at System.Net.Http.HttpClientHandler+d__63.MoveNext () [0x004ab] in <7736395a6c71409691a34accfc621095>:0
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <896ad1d315ca4ba7b117efb8dacaedcf>:0 at System.Net.Http.HttpClient+<SendAsyncWorker>d__49.MoveNext () [0x000ca] in <7736395a6c71409691a34accfc621095>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <896ad1d315ca4ba7b117efb8dacaedcf>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <896ad1d315ca4ba7b117efb8dacaedcf>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <896ad1d315ca4ba7b117efb8dacaedcf>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <896ad1d315ca4ba7b117efb8dacaedcf>:0 at System.Runtime.CompilerServices.TaskAwaiter1[TResult].GetResult () [0x00000] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at App.Registration+d__1.MoveNext () [0x00184] in C:\Users\User\source\repos\App\App\App\Registration.xaml.cs:49

inner Exception: **Error: ConnectFailure (Connection refused)"**

at System.Net.HttpWebRequest.EndGetRequestStream (System.IAsyncResult asyncResult) [0x0003a] in <6c708cf596db438ebfc6b7e012659eee>:0
at System.Threading.Tasks.TaskFactory1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func2[T,TResult] endFunction, System.Action1[T] endAction, System.Threading.Tasks.Task1[TResult] promise, System.Boolean requiresSynchronization) [0x0000f] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <896ad1d315ca4ba7b117efb8dacaedcf>:0
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <896ad1d315ca4ba7b117efb8dacaedcf>:0

Bug in Label.LineBreakMode ?

$
0
0

Hi,

I'm having a lot of trouble to display text in my application with correct wordwrapping (LineBreakMode.WordWrap) . If I set the Label.Text directly in the XAML, there is no problem, it shows correctly. But if I take the same text, assign it to a variable in my ViewModel, and then databind the Label.Text to this variable, all of a sudden, the WordWrap is ignored, and it uses what looks like CharacterWrap. (But if i set it to truncation, it does truncate !)

I was going to add an image, but I'm getting "You have to be around for a little while longer before you can post links."

(Although I posted this message already over a year ago : forums.xamarin.com/discussion/75839/problem-with-word-wrapping-with-xamarin-forms-label - how long do I have to wait to be able to post an image ?)

any ideas ? This is with the latest Xamarin.Forms nuget, and I get it for both iOS and Android ...

Viewing all 204402 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>