我HTML5
过去一个月一直在开发一个非常复杂的网络应用程序.昨晚我iPhone
突然决定缓存所有JS,CSS和图像,而不是加载任何更新的副本.这也发生在我的伙伴iPhone
身上,所以我认为它会影响我们应用的所有用户.
毋庸置疑,清除浏览器缓存,删除Web应用程序,重新启动手机以及重新启动无线连接都无法解决问题.
删除<meta name="apple-mobile-web-app-capable" content="yes">
解决了问题,但由于我们需要应用程序像...一样运行,因此会产生新问题.
我们不打算将旧技巧附加?number
到我们所有脚本,样式表和图像的末尾.这是荒谬的.而且-如果我们是要实现这样的事情,它会是某种动态的JS实现的.我们的应用程序是一个加载大多数脚本的HTML页面,其他页面是AJAX,其他数据也是通过AJAX获得的.我想这可以做到,但我希望有一个更优雅的解决方案.我知道,我觉得我不应该做任何事情,因为这一切都顺利完成了整整一个月.
使用cache-control
,expires
以及pragma
<meta>
标签不我们有什么好处或者,因为这纯粹是iOS的web应用程序的问题.缓存通常适用于移动版Safari,移动版Chrome和所有桌面浏览器.似乎iOS为应用程序(包括用户无法清除的Web应用程序)提供了单独的缓存.
似乎很多SO用户都遇到过这个问题,但我找不到任何令人满意的解决方案.有没有人在类似的情况下解决了这个问题?我可以使用清单文件指定不缓存多个文件吗?似乎清单文件用于做相反的事情.
最近我将Xcode更新为7,它包含swift 2.0编译器.在此之前,我用旧版本的swift制作了我的项目.在那个版本中我创造了NSMutableDictionary
像波纹管
let dictParams:NSMutableDictionary? = ["test" : "test",
"username" : txtEmail.text,
"password" : txtPassword.text,
"version" : "1.0",
"appId" : "1",
"deviceId" : "fasdfasdfrqwe2345sdgdfe56gsdfgsdfg"
];
Run Code Online (Sandbox Code Playgroud)
在上面的代码中txtEmail.text
,txtPassword.text
是我的文本字段,并在运行时填充tha值.
这段代码在旧版本的swift中正常工作,但在更新到swift 2.0后,它给了我一个像下面的错误
Cannot convert value of type '[String : String?]' to specified type 'NSMutableDictionary?'
Run Code Online (Sandbox Code Playgroud)
有什么问题请指导我.
我有NSArray
.我在那个数组里面有一些价值.
NSArray *testArray = [NSArray arrayWithObjects:@"Test 1", @"Test 2", @"Test 3", @"Test 4", @"Test 5", nil];
NSLog(@"%@", testArray);
Run Code Online (Sandbox Code Playgroud)
结果如下:
(
"Test 1",
"Test 2",
"Test 3",
"Test 4",
"Test 5"
)
Run Code Online (Sandbox Code Playgroud)
现在我想要这样的结果:
(
"Test 3",
"Test 5",
"Test 1",
"Test 2",
"Test 4"
)
Run Code Online (Sandbox Code Playgroud)
有没有办法在不重新初始化阵列的情况下做到这一点?我可以交换这个数组的值吗?
我有一个iPhone应用程序,其中我将images
目录(组)添加到Resources
(组).我想访问其中的图像images
.我需要一个到那些图像的路径,所以我创建了一个像下面的代码.
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"myImage1" ofType:@"png" inDirectory:@"images"];
NSLog(@"%@", imagePath);
Run Code Online (Sandbox Code Playgroud)
结果:
(null)
Run Code Online (Sandbox Code Playgroud)
我也试过这段代码
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"myImage1" ofType:@"png"];
Run Code Online (Sandbox Code Playgroud)
但是这段代码给了我(null)
结果.
myImage1
的道路是 Resources/images/myImage1.png
我不知道是什么问题.请提出一些修正建议.
我是iOS开发的新手.我在我的iPad应用程序视图中创建了一个导航栏.我不需要导航控制器,这就是为什么我只添加了导航栏.现在我想在导航栏中添加按钮.我尝试了很多但没有成功.是否可以仅添加带按钮的导航栏?如果是,那么建议我一些示例代码.
"我没有导航控制器或需要它.我只想在一个视图中添加导航栏."
贝娄是我为在ViewDidLoad()中添加导航栏而编写的代码
UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 1026, 50)];
[navBar setTintColor:[UIColor blackColor]];
[navBar setDelegate:self];
[self.view addSubview:navBar];
Run Code Online (Sandbox Code Playgroud)
提前致谢....
我对Swift很新.我有一个混合项目,其中一些类在Objective-C中,一些是Swift.我有一个基于Objective-C文件的Constant.h文件.在这个头文件中提到了一些常常像波纹管
#define mainViewBgColor [UIColor colorWithRed:248.0/255.0 green:247.0/255.0 blue:247.0/255.0 alpha:1.0]
Run Code Online (Sandbox Code Playgroud)
但问题是我无法在Swift类中访问此常量.请参阅下面的Swift代码
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = mainViewBgColor //Want to access liek this but this line gives me an error.
self.loadNavigation();
}
Run Code Online (Sandbox Code Playgroud)
请建议正确访问常量的正确方法,特别是Objective-C中的常量写入.
注意:请考虑我有Bridging-Header.h文件,我已经将常量文件导入到该桥文件中.即使我可以成功访问简单的字符串常量.
编辑的替代解决方案:我发现在swift中使用常量的替代解决方案是创建新的swift常量文件,让我们说SwiftConstant.swift并在此文件中定义类似于下面的常量.
let mainViewBgColor = UIColor(red: 248.0/255.0, green: 247.0/255.0, blue: 247.0/255.0, alpha: 1.0)
Run Code Online (Sandbox Code Playgroud)
现在没有导入SwiftConstant.swift文件我可以使用常量.我不知道这是正确的方式,也不希望等待好的答案.
我正在开发iPhone应用程序.在这个应用程序中我有4个不同的意见.在所有视图中我设置了背景颜色.见波纹管代码
self.view.backgroundColor = [UIColor colorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f];
Run Code Online (Sandbox Code Playgroud)
我正在测试各种颜色的背景颜色.当我必须改变任何颜色我需要在所有视图控制器中更改.而不是我可以为此制作全局变量?我不知道如何在全局变量中设置UIColor.请给我一些想法.
我有iphone应用程序中的两个视图控制器.
1.)FirstVC
2.)SecondVC
在我的FirstVC中我有一个按钮.通过点击该按钮我打开了SecondVC presentModalViewController
.看下面的代码.
- (IBAction)buttonClicked:(id)sender
{
SecondVC *secondVC = [SecondVC alloc] initWithNibName:@"SecondVC" bundle:nil];
[self.navigationController presentModalViewController:secondVC animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
现在转移到SecondVC.在SecondVC上,我创建了导航栏以及"取消"按钮作为leftBarButtonItem.我在取消按钮上设置了一个单击按钮的事件.在那种方法中,我想解雇SecondVC.波纹管方法在SecondVC中.看下面的代码.
- (void)cancelButtonClicked
{
[self dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)
这段代码不起作用.我无法通过此代码解雇SecondVC.请提出另一种技巧.
我有一个名为category的表.
在这张表中我有两列1.)cat_id
,2.)cat_name
在这个表中我添加了这个值的记录:cat_id
= 1
,cat_name
=test
现在,当我要运行选择查询时
SELECT * FROM category WHERE cat_name = 'Test'
Run Code Online (Sandbox Code Playgroud)
这个查询返回null结果,因为在数据库记录字符串中test
,在查询中它是一个Test
标记这里的大写字符串的差异.null结果的Instade我想要第一条记录的结果.
我也想要相同的结果,反之亦然小和大写字符串.
我使用sqlite作为数据库.
在这里,我试图使用以下代码向Facebook添加帖子.
FBAppCall *appCall = [FBDialogs presentShareDialogWithLink:urlToShare
name:@"Title"
caption:nil
description:@"description"
picture:nil
clientState:nil
handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
if (error) {
NSLog(@"Error: %@", error.description);
} else {
NSLog(@"Success!");
}
}];
Run Code Online (Sandbox Code Playgroud)
但这不起作用.它给出了以下错误.
Error Domain=com.facebook.Facebook.platform Code=102 "The operation couldn’t be completed. (com.facebook.Facebook.platform error 102.)" UserInfo=0x1cde3340 {error_code=102, action_id=E780C3AA-1387-4B9C-9A3A-9A16FB54BC59, error_message=An error occurred during publishing., app_id=558567750859724}
我在这里工作cocos2d
,这可能是原因.