为什么Objective C提供类NSString和子类NSMutableString而不仅仅提供NSMutableString?NSString不等同于"const NSMutableString"吗?
在C++中,你只有一个字符串类,std :: string,如果你想要一个常量,你可以声明一个const std:string.
我有兴趣知道为什么我不应该只在任何地方使用NSMutableString并且从不打扰NSString?必须有一个理由,或者语言设计师不会同时提供这两个原因.也许它占用更少的存储空间?
示例:我在窗口坐标中有一个CGPoint:
CGPoint windowPoint = CGPointMake(220.0f, 400.0f);
Run Code Online (Sandbox Code Playgroud)
在aView超级视图的超级视图中有超级视图.在视图层次结构深处的某个地方,甚至可能转换了几次.
当你得到一个UITouch时,可以询问它-locationInView:它将返回相对于该视图的坐标.
我需要几乎相同的东西.有没有简单的方法来实现这一目标?
我的地图显示当前位置有蓝点.当然,当我移动时,蓝点移动..我只是想一直保持地图的蓝点中心,使地图移动而不是谷歌地图导航器..
我搜索了很多但找不到方法......
与此问题类似,我有一个UITableViewCell的自定义子类,它有一个UITextField.当用户触摸不同的表视图单元格或表格外的某些东西时,除了键盘之外它的工作正常不会消失.我正在试图找出最好的位置来找出单元格外部的东西,然后我可以在文本字段上调用resignFirstResponder.
如果UITableViewCell可以接收其视图之外的触摸事件,那么它可能只是resignFirstResponder本身,但我没有看到任何方法在单元格中获取这些事件.
编辑:我在我的UITableViewCell子类中尝试了这个(下面),但它不起作用,我认为因为如果事件由控件处理,touchesBegan:withEvent:不会被调用.我想我需要在他们以某种方式向响应者链发送之前捕获事件.
我正在考虑的解决方案是向视图控制器添加touchesBegan:withEvent:方法.在那里,我可以将resignFirstResponder发送到除触摸所在的所有可见的所有tableview单元格(让它获取触摸事件并自行处理).
也许像这样的伪代码:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
CGPoint touchPoint = // TBD - may need translate to cell's coordinates
for (UITableViewCell* aCell in [theTableView visibleCells]) {
if (![aCell pointInside:touchPoint withEvent:event]) {
[aCell resignFirstResponder];
}
}
}
Run Code Online (Sandbox Code Playgroud)
我不确定这是否是最好的解决方法.tableviewcell本身似乎没有任何方法可以接收其视图之外的事件的事件通知.
编辑2:我以为我有一个答案(我甚至将其作为答案发布)使用hitTest:withEvent:但是没有成功.它并不总是被调用.:-(
我正在使用a UIBezierPath和[path addArcWithCenter:radius:startAngle:endAngle:clockwise:]方法在Core Graphics的自定义饼图中绘制'切片' .我的问题是,切片的尖端实际上突然超过中心点,侵入其他切片空间.
有没有办法'围绕'这个边缘?
这是用于绘制路径的代码
[path moveToPoint:center];
[path addArcWithCenter:center radius:radius startAngle:interiorAngle endAngle:totalAngle clockwise:YES];
[path addLineToPoint:center];
[path closePath];
Run Code Online (Sandbox Code Playgroud)
这是问题的图像:

左下方蓝色部分的白色尖端稍微侵入右上方的大蓝色部分.
int main()
{
unsigned int b;
signed int a;
char z=-1;
b=z;
a=z;
printf("%d %d",a,b);
}
Run Code Online (Sandbox Code Playgroud)
给-1 -1.为什么没有符号扩展,也就是它何时发生?
即使父视图控制器(和手机)处于横向方向,有没有办法以纵向方式加载纵向视图控制器?
这个特殊的UIViewController只适用于Portrait模式(它是一个颜色选择器),因此shouldAutorotateToInterfaceOrientation中的代码:仅对纵向方向返回YES.如果您在视图已加载时转动手机,它可以正常工作,它会保持纵向状态,但如果在加载视图的NIB时手机已处于横向状态,则无效.
当加载ViewController时,屏幕已处于横向方向,视图采用纵向布局,视图的下半部分为截止.我尝试提出横向布局,但分段控制是一个问题.
编辑 - 我已尝试在viewWillAppear中使用setStatusBarOrientation,但它只影响状态栏,导航栏和视图仍然针对横向旋转.
这种情况发生在iPhone上的3.1.3和4.0.
我有一些代码,我显示一个精灵N秒.N秒后删除此框,我想调用我可以选择的功能.例如,在10秒钟内我想调用showBoxEnded.
我在这看了看,看到我可以使用SEL功能了.我写:
-(void)caller:(id)sender
{
NSLog(@"Function Called!");
}
Run Code Online (Sandbox Code Playgroud)
我可以调用callFunc来设置将被调用的函数:
-(void) callFunc:(SEL)func;
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试这个时,我的函数永远不会被调用.我在这里错过了什么吗?这有可能像在C++中一样吗?
是否可以将SEL函数作为参数传递给函数?
谢谢!
我开发一个应用程序,其中我发现型铸造一个荒谬的问题,我不能够强制类型转换NSDate到NSString.
NSDate *selected =[datePicker date];
NSString *stringTypeCast = [[NSString alloc] initWithData:selected
encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)
从,上面的代码片段datePicker是一个对象UIDatePickerController.
我已经为iPhone SDK编程了大约6个月,但我对一些事情感到有些困惑......其中一个我在这里问:
为什么以下方面有所不同?
if (varOrObject == nil)
{
}
Run Code Online (Sandbox Code Playgroud)
VS
if (nil == varOrObject)
{
}
Run Code Online (Sandbox Code Playgroud)
来自perl背景,这让我感到困惑......
有人可以解释为什么两个(第二个)中的一个是真的,而如果两个例程在代码中一个接一个地放置,则第一个不会. varOrObject这两个if陈述之间不会发生变化.
没有特定的代码发生在这里,只是我已经在很多地方读过两个语句不同,但不是为什么.
提前致谢.
我有一个uitableview,每个单元格都有一个滚动视图作为子视图.scrollview中有一堆图像.因此,当我更改数据源中的数据并在调用重新加载表后,图像不会更改,但是当我删除出队时,重新加载新数据.是否有任何方法来删除出队中的内容,以便我不会得到旧的数据
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"looser"];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
scrollview=[[myscrollView alloc]initwitharray:imagearray];
[cell.contentView addSubview:scrollview];
}
}
Run Code Online (Sandbox Code Playgroud) iphone ×7
ios ×3
objective-c ×3
c ×2
uitableview ×2
coordinates ×1
events ×1
mkmapview ×1
nsstring ×1
null ×1
orientation ×1
pie-chart ×1
touch ×1
uiview ×1