正如标题所说,这是一些代码:
- (void)refreshMap {
NSLog(@"refreshing");
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
lat = [[NSNumber numberWithDouble:myUserLocation.coordinate.latitude] stringValue];
lon = [[NSNumber numberWithDouble:myUserLocation.coordinate.longitude] stringValue];
NSString *url = [[NSString alloc] initWithFormat:@"http://mywebsite.com/geo_search.json?lat=%@&lon=%@", lat, lon];
NSURLRequest *theRequest=[NSURLRequest requestWithURL:[NSURL URLWithString:url]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];
[[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
[url release];
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
}
Run Code Online (Sandbox Code Playgroud)
网络活动指示器(在状态栏中)根本不显示(不在模拟器中,也不在真实设备上).我该如何解决这个问题?
我在我的应用程序中使用加速度计,我正在使用[UIApplication sharedApplication].idleTimerDisabled = YES;以防止设备进入睡眠状态.它工作正常,但这样屏幕始终亮,有一种方法可以防止设备进入睡眠状态并保持能源经济模式?当idleTimerDisabled设备进入NO状态时,设备在睡眠前进入能量经济模式,我只想防止设备进入睡眠状态并保持能量经济性.有办法做到这一点?
我有一个简单的问题:
我无法强制[UIApplication sharedApplication] openUrl: 打开网页导航器中的网址,始终打开Facebook应用程序,不要去facebook页面.
iOS 9.2、xCode 7.2、Objective-C
我使用了本教程(Core Spotlight 版本)但将其翻译成 Objective-C:http : //code.tutsplus.com/tutorials/ios-9-introducing-search-apis--cms-24375
除了一件事之外,一切正常 - 当用户点击搜索结果时,我无法获得回调。看来我需要在我的应用程序委托中编写以下方法:
- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler
Run Code Online (Sandbox Code Playgroud)
但它根本没有被调用。如何解决这个问题?
这是我的代码:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
return true
}
Run Code Online (Sandbox Code Playgroud)
我正在阅读适用local push notifications于我的iOS应用程序的教程,该函数出现了很多,但是在我的项目中实施该函数时,出现此错误:
重新声明了'application(_:didFinishLaunchingWithOptions :)'
我的问题是为什么我会收到此错误?用它替换的正确函数是什么?
我读了其中的文档,Xcode它告诉我们函数存在,这就是为什么我感到困惑。
我想通过单击按钮转到URL。我尝试使用“ UISharedapplication”以及通过下面提到的方法,但没有用。请帮忙。谢谢。
@IBAction func Displayurl(_ sender: Any) {
UIApplication.shared.canOpenURL(NSURL (string: "http://www.apple.com")! as URL)
}
Run Code Online (Sandbox Code Playgroud) 当我打开邮件应用程序时,我尝试传递主题和正文,但由于某种原因,当我传递参数时,邮件不会发生。任何人都可以在我的代码中看到我做错了什么吗?或者如果大家有另一种方法让我在 swiftui 中工作,那就太棒了。谢谢您的帮助。
这是我的代码:
Button(action: {
let email = "test@gmail.com"
let subject = "Feedback"
let body = "Please provide your feedback here, and we will contact you within the next 24-48 hours."
guard let url = URL(string: "mailto:\(email)?subject=\(subject)&body=\(body)") else { return }
UIApplication.shared.open(url)
}) {
Text("Contact Us - ")
}
Run Code Online (Sandbox Code Playgroud) 我想到的第一种方法是将singleton对象作为属性放在appDelegate对象中.通过这种方式,您可以使用任何地方访问它
#import "myAppDelegate.h"
// ...
[[(myAppDelegate *)[UIApplication sharedApplication] delegate] SingletonObj]
Run Code Online (Sandbox Code Playgroud)
缺点是你必须显式地转换和导入你的委托的标题,告诉你正在使用的类,SingletonObj实际上是委托的属性.我认为这会让代码闻起来有点香味.
第二种方法是创建一个合法的单例类.然而,这需要更多的工作.我个人认为一个Singleton类,绰绰有余.
我不是程序员,所以我非常感谢对我的推理和对这个主题的看法的更正.
嘿伙计们,我仍在继续构建我的iPhone项目,我在启动facebook应用程序时遇到了麻烦.首先,我假设每个SDK Xcode开发人员都知道Facebook应用程序在模拟中没有facebook或twitter应用程序.由于我有一个关于我公司的facebook页面和Twitter账号,我似乎无法测试从facebook应用程序或Twitter应用程序的推特页面启动我的facebook页面,因为它们不在iOS模拟器中.所以我想知道如果他们不在那里我怎么能从facebook和Twitter应用程序打开我的facebook和twitter页面?我不想使用Facebook或Twitter URL,然后将其加载到UIWebView中,我想在我的项目中单击按钮后打开Facebook和Twitter应用程序,然后该项目将关闭并打开Facebook或Twitter应用程序(来自应用程序商店的应用程序),所以希望有人知道他们可以一步一步地帮助我,或者他们是否有一个知道如何运行facebook或twitter应用程序的代码,如果我的英语不够清楚,对不起,但希望你能帮助我或者有更好的解决方案来帮助解决我的问题,谢谢
我有一些NSOperations在我的应用程序中定期启动.即使将应用程序置于后台,它们也应该完成.为此,我正在使用该beginBackgroundTaskWithExpirationHandler方法.
我是否应该使用beginBackgroundTaskWithExpirationHandler/ endBackgroundTask:每次我开始我的任务,即使应用程序不是背景?或者我只是在检测到时才会调用开始/结束方法UIApplicationDidEnterBackgroundNotification?
选项1:每次使用后台任务
/**
* This method is called regularly from a NSTimer
*/
- (void)processData
{
__block UIBackgroundTaskIdentifier operationBackgroundId = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[[UIApplication sharedApplication] endBackgroundTask:operationBackgroundId];
operationBackgroundId = UIBackgroundTaskInvalid;
}];
NSOperation *operation = ...
[self.queue addOperation:operation];
operation.completionBlock = ^{
[[UIApplication sharedApplication] endBackgroundTask:operationBackgroundId];
operationBackgroundId = UIBackgroundTaskInvalid;
};
}
Run Code Online (Sandbox Code Playgroud)
选项2:仅在应用程序即将转到后台时使用后台任务
/**
* This method is called regularly from a NSTimer
*/
- (void)processData
{
NSOperation *operation = ...
[self.queue addOperation:operation];
} …Run Code Online (Sandbox Code Playgroud) uiapplication ×10
ios ×9
objective-c ×4
swift ×3
facebook ×2
iphone ×2
openurl ×2
appdelegate ×1
architecture ×1
oop ×1
swiftui ×1
twitter ×1
xcode ×1