小编Vla*_*nic的帖子

iOS TextField - 自动完成功能会添加空白字符

我有一个UITextField的问题.当我启用了电子邮件自动填充选项时,我可以从列表中选择一封电子邮件,但iOS会自动在文本字段末尾添加空格.

这是一个iOS错误还是我可以做些什么来防止这种情况?PS我知道我可以处理文本更改并从字符串末尾删除空白空间,但我正在寻找原生方式.

在此输入图像描述 在此输入图像描述

email uitextfield autosuggest ios

17
推荐指数
1
解决办法
3399
查看次数

getSupportFragmentManager().findFragmentById为android中的片段中的谷歌地图返回null?

我的Google地图有问题,即getSupportFragmentManager().findFragmentById返回null.你知道如何解决这个问题吗?

这是代码:

fragment_map.xml:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.myapp.something.MapFragment">
<fragment
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" />                  
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

MapsFragment.java:

public class MapFragment extends Fragment implements OnMapReadyCallback, android.location.LocationListener

public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    SupportMapFragment mapFragment = (SupportMapFragment) this.getActivity().getSupportFragmentManager().findFragmentById(R.id.map);
    mapFragment.getMapAsync(this);
...
Run Code Online (Sandbox Code Playgroud)

我在Activity中有Google地图,它可以使用代码:

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mapFragment.getMapAsync(this);
Run Code Online (Sandbox Code Playgroud)

我试图在片段中重用它,因为我需要片段中的映射,而不是活动,但它不起作用.

我试过了:

  • 在"onCreateView"函数中调用此代码
  • SupportMapFragment mapFragment = (SupportMapFragment) getFragmentManager().findFragmentById(R.id.map);
  • GoogleMap mGoogleMap = ((SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.map)).getMap(); 已弃用,应用程序崩溃
  • SupportMapFragment mapFragment = (SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.map); 和类似的变化,但在所有情况下,我得到mapFragment null.

你知道我怎么能解决这个问题?

android google-maps fragment android-fragments

11
推荐指数
1
解决办法
7901
查看次数

SwiftUI 导航栏标题 - displayMode: .inline - 崩溃

我的 SwiftUI 有问题。我正在创建一个带有导航栏的列表,我想将导航栏模式设置为内联,我不希望它过大,默认情况下。但是当我将导航栏标题模式设置为内联时,应用程序崩溃了。

struct User {
    var index: Int
    var name: String
}

struct ContentView : View {
    var users: [User] = [
        User(index: 0, name: "Peter"),
        User(index: 1, name: "Marko"),
        User(index: 2, name: "John")]

    var body: some View {
        NavigationView {
            List(users.identified(by: \.index)) {
                UserRow(user: $0)
            }
            .navigationBarTitle(Text("Users"), displayMode: .inline)
        }
    }
}

struct UserRow: View {
    var user: User
    var body: some View {
        Text(user.name)
    }
}
Run Code Online (Sandbox Code Playgroud)

我想这是一个 SwiftUI 错误。

有人知道可能是什么问题吗?提前致谢。

navigationbar ios13 swiftui

7
推荐指数
1
解决办法
2621
查看次数

Facebook延迟iOS上的Deferred Deep Linking是否可以正常工作?如何在将应用发布到Store之前对其进行测试?

我在iOS上的Facebook延迟深层链接有问题。深度链接无效,但延迟的深度链接无效。我已经阅读了很多有关此问题的信息,但仍然找不到解决方案。

我已经建立了深层链接,并且可以正常工作。当我还尝试在App Ads Helper上测试深层链接并单击“测试深层链接”,输入深层链接并单击“发送通知”时,我在Facebook上收到一条通知,该通知打开了我的应用程序,并且这种深层链接有效。但是,当我单击“选择延迟”时,我什么也没收到。我尝试删除应用程序并重新安装,但是[FBSDKAppLinkUtility fetchDeferredAppLink:...];新安装后方法没有得到任何延迟的深层链接。

[FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) {
        if (error) {
            NSLog(@"Received error while fetching deferred app link %@", error);
        }
        if (url) {
            [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) {

            }];
        }
    }];
Run Code Online (Sandbox Code Playgroud)

在此示例中,url始终为nil。

注意:我在商店中仍然没有应用程序,因此我输入了另一个应用程序的Apple ID。即使我在商店中拥有自己的应用程序,又如何在不将应用程序发布到商店的情况下测试延迟的深层链接?

另外,我在Facebook文档上阅读了以下内容:

从iOS 10开始,iOS不支持延迟深层链接,因此一旦人们安装了该应用程序,您将无法打开除开始屏幕以外的内容。(来源

因此,我不确定这是否可能。

另外,我还阅读了有关Stackoverflow的另一篇文章,但没有找到我想要的答案,即它们看起来不完整,或者我只是看不到答案:

在发布iOS App到appStore之前,如何使用Facebook延迟深层链接功能进行新安装并进行测试?->这个问题的答案不是我要的:

如果要验证延迟链接,请在对话框中选中“发送延迟”。因此,执行此操作后,您需要卸载应用程序(如果已经存在),然后从应用程序商店再次安装。您将在其中进行测试的设备应已安装facebook应用,并使用您从该帐户发送了来自app-ads帮助程序的“延迟的深层链接请求”登录。现在,当您打开应用程序时,您应该可以看到延迟的深层链接功能正在运行。

这行不通,所以这就是为什么我问这个问题。

另外,我发现我可以使用Tune SDK进行延迟的深层链接:

...这不是iOS 10操作系统本身的问题。延迟深层链接使用TUNE SDK在iOS 10上运行良好。(来源

另外,我发现我可以使用Branch.io进行延迟的深层链接:

使用Branch,您将获得Universal Link的所有基本路由以及延迟的深层链接,并为新用户获取流程安装归因。(来源

我还没有尝试过Tune和Branch.io。我想使用Facebook广告,并在没有第三方解决方案的情况下执行延迟的深层链接。Facebook是否可以使用,以及如何在iOS上测试Facebook的延迟深层链接?

testing facebook deep-linking ios facebook-ads-api

6
推荐指数
1
解决办法
2225
查看次数