我有一个UITextField的问题.当我启用了电子邮件自动填充选项时,我可以从列表中选择一封电子邮件,但iOS会自动在文本字段末尾添加空格.
这是一个iOS错误还是我可以做些什么来防止这种情况?PS我知道我可以处理文本更改并从字符串末尾删除空白空间,但我正在寻找原生方式.
我的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)
我试图在片段中重用它,因为我需要片段中的映射,而不是活动,但它不起作用.
我试过了:
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.你知道我怎么能解决这个问题?
我的 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 错误。
有人知道可能是什么问题吗?提前致谢。
我在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的延迟深层链接?
ios ×2
android ×1
autosuggest ×1
deep-linking ×1
email ×1
facebook ×1
fragment ×1
google-maps ×1
ios13 ×1
swiftui ×1
testing ×1
uitextfield ×1