小编ste*_*eaw的帖子

使用StackLayout标记包装

我正在使用Xamarin并使用XAML创建我的视图,我无法为我的生活获得这个标签以我想要的方式包装.如果标签到达屏幕的边缘,我希望它像这样包裹......

这是我想要的样子

现在它看起来像这样......

这就是它出现的方式

这是我的代码:

<StackLayout Orientation="Vertical" HorizontalOptions="StartAndExpand" BindingContext="{Binding CurrentProviderDetails}" Padding="20,20,20,20" >
  <Grid>
    <Grid.RowDefinitions>
      <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="Auto" />
    </Grid.ColumnDefinitions>
<!--Certification Board-->
  <StackLayout Orientation="Horizontal" HorizontalOptions="StartAndExpand" Grid.Row="0" Grid.Column="0" >
    <Label Text="Certification Board: " FontSize="13" HorizontalOptions="Fill" VerticalOptions="CenterAndExpand" />
    <Label Text="{Binding Certification}" VerticalOptions="CenterAndExpand"  HorizontalOptions="Center" Font="17" LineBreakMode="WordWrap"/>
  </StackLayout>
 </Grid>
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

这不需要在网格中; 这只是我现在尝试的方法.我唯一的要求是'认证委员会'是一个标签,我必须传入一个字,当它到达屏幕的末尾时,它会换行.任何帮助都会很棒,谢谢!

xaml label word-wrap xamarin

15
推荐指数
2
解决办法
2万
查看次数

google-services.json可以免受黑客攻击吗?

如果黑客反编译我的APK,他能否从这个文件中看到我的API密钥?我并不担心我的源代码库.我只是担心黑客能够以某种方式从我的APK中看到这个API密钥.我正在尝试加密此文件并在运行时解密它但有一些问题

encryption android risk-analysis google-play-services

13
推荐指数
3
解决办法
3804
查看次数

如何使用逗号和行分隔符对字符串进行标记

我正在像在Java中那样在Swift中创建一个简单的String Tokenizer ......但是它真的不适合我.

我的数据源中每行的结尾用"^"分隔,数据用逗号分隔.

例如:"string 1,string 2,string 3,^,string 1,string 2,string 3,^"

这就是我在Java中所做的...(我只希望每行数据中的前两个字符串)

        String delimeter = "^";
        StringTokenizer tokenizedString = new StringTokenizer(responseString,delimeter);

        String [] stringArray = new String [tokenizedString.countTokens()];
        StringTokenizer tokenizedAgain;
        String str1;
        String str2;
        String token;
        for(int i =0; i< stringArray.length; i ++)
        {

            token = tokenizedString.nextToken();
            tokenizedAgain = new StringTokenizer(token, ",");
            tokenizedAgain.nextToken();
            str1 = tokenizedAgain.nextToken();
            str2 = tokenizedAgain.nextToken();
        }
Run Code Online (Sandbox Code Playgroud)

如果有人能指出我正确的方向,那将非常有帮助.

我看过这个:Swift:将一个String拆分成一个数组

这个:http://www.swift-studies.com/blog/2014/6/23/a-swift-tokenizer

但是我无法在Swift中找到关于String Tokenizing的其他资源.谢谢!

string stringtokenizer ios swift

5
推荐指数
1
解决办法
2730
查看次数

如何始终在顶部获取Google Map的“ myLocationEnabled”蓝点

这是GMSMapView内部的UIImageView的示例。我的问题是Google的蓝点显示在UIImageView的后面...我如何才能使该蓝点myLocationEnabled始终显示在顶部?

@IBOutlet weak var mapView: GMSMapView!

func locationManager(manager: CLLocationManager!, didChangeAuthorizationStatus status: CLAuthorizationStatus){

    NSLog("Did Change Authorization Status")
    if status == CLAuthorizationStatus.AuthorizedWhenInUse {

        //This uses the location manager
        if locationManager.location != nil {
            currentLatitude = locationManager.location.coordinate.latitude
            currentLongitude = locationManager.location.coordinate.longitude
        }
        //How do I get this over my UIImageView?
        mapView.myLocationEnabled = true

        var TARGET: CLLocationCoordinate2D = CLLocationCoordinate2D(latitude: currentLatitude, longitude: currentLongitude)
        var camera: GMSCameraPosition = GMSCameraPosition(target: TARGET, zoom: 12, bearing: 0, viewingAngle: 0)
        mapView.camera = camera        
    }
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

所有这些红色圆圈都是一个UIImageView,位于MapView内部。我希望当前位置在此UIImageView之上...但是使用mapView.myLocationEnabled = true …

google-maps uiimageview ios swift

5
推荐指数
0
解决办法
846
查看次数

如何将 MonoTouch.ObjCRuntime.Class.ThrowOnInitFailure 设置为 false?

我正在使用 Xamarin 并尝试在 iOS 模拟器中运行我的应用程序之一,但出现此错误:

2015-10-07 12:38:02.715 MolinaCoding1iOS[1550:54337] Unhandled managed exception:
Could not initialize an instance of the type 'UIKit.UIImage': the native 'initWithContentsOfFile:' method returned nil.
It is possible to ignore this condition by setting MonoTouch.ObjCRuntime.Class.ThrowOnInitFailure to false. (System.Exception)
Run Code Online (Sandbox Code Playgroud)

我如何真正忽略这种情况?如果我不应该忽略这一点……那我该怎么办?

谢谢

xamarin.ios ios xamarin visual-studio-2013

5
推荐指数
1
解决办法
3200
查看次数

为什么我在抽象基类中收到此编译错误?

我正在尝试扩展此插件供我自己使用...

https://github.com/jamesmontemagno/Xamarin.Plugins/blob/master/Connectivity/Connectivity/Connectivity.Plugin.Abstractions/BaseConnectivity.cs

但是当我将代码复制到Visual Studio时,我收到了一些错误.

在此输入图像描述

我是否需要导入一些特殊的框架才能使用'=>'运算符和'Invoke'方法?这是一个抽象基类.我正在使用VS2013

c# abstract-class visual-studio xamarin

5
推荐指数
1
解决办法
299
查看次数

我可以根据条件禁用ViewCell.ContextActions吗?

嗨,我使用Xamarin Forms ListView,我想知道我是否可以基于某个绑定或后面的代码禁用上下文操作.

我在整个应用程序中使用一个GroupedListView,但它根据用户的操作显示不同的数据.有一个"管理您的收藏夹"功能,我希望用户能够在iOS上滑动删除或长按Android以删除ListItem,但如果列表显示一些搜索,我不希望这种行为结果或其他

<ViewCell.ContextActions>
    <MenuItem Text="Delete" IsDestructive="true" CommandParameter="{Binding .}" Command="{Binding Path=BindingContext.OnDeleteCommand, Source={x:Reference Name=ListViewPage}}"/>
</ViewCell.ContextActions>
Run Code Online (Sandbox Code Playgroud)

这并没有禁用它......

<ViewCell.ContextActions IsEnabled="false"> //This IsEnabled does nothing
    <MenuItem Text="Delete" IsDestructive="true" CommandParameter="{Binding .}" Command="{Binding Path=BindingContext.OnDeleteCommand, Source={x:Reference Name=ListViewPage}}"/>
</ViewCell.ContextActions>
Run Code Online (Sandbox Code Playgroud)

如何禁用ContextActions?我不想让用户总是能够刷卡

c# xaml listview xamarin xamarin.forms

5
推荐指数
2
解决办法
3470
查看次数

禁用 Android 双击 Xamarin 表单标签

嘿,我正在使用 Xamarin Forms,我正在处理 android 双击问题。

我的问题是我使用标签作为按钮 - 当我快速单击它时,应用程序将崩溃。我想通过在单击后禁用点击来防止这种情况发生。

我的标签在 XAML 中定义如下:

<Label x:Name="LabelName" Text="LabelText"/>
Run Code Online (Sandbox Code Playgroud)

我的代码隐藏是这样的:

LabelName.GestureRecognizers.Add((new TapGestureRecognizer
{
  Command = new Command(async o =>
  {
    await Navigation.PopToRootAsync();
  })
}));
Run Code Online (Sandbox Code Playgroud)

c# xaml android gesture-recognition xamarin.forms

4
推荐指数
1
解决办法
5872
查看次数

BufferedWriter,FileWriter,Output Stream ......这些东西最现代化的方法是什么?

我正在尝试以编程方式在java中创建一个新文件,并将字符串数组写入该文件.如果文件已经存在,我只想附加另一个字符串数组(这就像一个日志文件).什么是最"现代"的方式来做这样的事情?FileWriter和Buffered写入程序仍然可行吗?我在这里发现的大多数东西都是从2010年开始的......就在5年前!

编辑:我实际上需要接受一个ArrayList,但不应该有区别

java logging file streamwriter bufferedwriter

3
推荐指数
1
解决办法
845
查看次数

如何将文本居中在水平StackLayout中?

我有这个StackLayout,我曾经在XAML中创建一个导航栏.此Horizo​​ntal StackLayout包含一个按钮和标签.问题是文本没有完全居中,我似乎无法在中间完美地完成它.有人可以帮我把这个文本集中在这个StackLayout中吗?顺便说一下,我正在使用Xamarin.

<!-- Nav Bar-->
<StackLayout Orientation="Horizontal" HeightRequest="45" BackgroundColor="{StaticResource Teal}">
  <StackLayout.Padding>
    <OnPlatform x:TypeArguments="Thickness"
                iOS="10,0,0,0"
                Android="0,0,0,0"
                WinPhone="0,0,0,0" />
  </StackLayout.Padding>
  <Button x:Name="btnBack" HorizontalOptions="Start" TextColor="White" BackgroundColor="Transparent"
          Command="{Binding BackCommand}" IsVisible="{Binding CanGoBack}" />
  <Label HorizontalOptions="CenterAndExpand" VerticalOptions="Center" TextColor="White" FontSize="24" Text="{Binding TitleBarText}" LineBreakMode="TailTruncation" />
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,应用标题不在中心...

c# xaml android ios xamarin

3
推荐指数
2
解决办法
8632
查看次数

当我为启动屏幕创建9补丁图像时,它对于大型设备来说显得太小了

我决定在启动画面上使用9补丁图像。
问题是,在较大的设备上,启动画面太小,我希望我的启动画面占据屏幕的大部分。

在较小的设备上很好。
我认为我没有以正确的方式创建这9个补丁图像。

有人可以将我指向某个站点或使用9个补丁的初始屏幕图像的GitHub存储库吗,该图像占用了所有设备上的大部分屏幕尺寸?

我想把它放在我的应用程序中,看看我做错了什么。

SplashTheme.xml

<resources>
  <style name="SplashTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:windowBackground">@drawable/splashscreen</item>
    <item name="android:windowNoTitle">true</item>
 </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

splashscreen.xml

<?xml version="1.0" encoding="utf-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
    <shape android:shape="rectangle" > //This is so I can have a white background
        <solid android:color="#FFFFFF" />
    </shape>
</item>
<item>
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
      android:src="@drawable/splash" 
      android:tileMode="disabled"
      android:gravity="center"
    />
</item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)

android splash-screen nine-patch

0
推荐指数
1
解决办法
3079
查看次数