小编Sno*_*man的帖子

从UIAlertView获取文本

我正在尝试从警报视图中获取文本并将其添加到我的可变数组中以在表视图中列出.我意识到几个月前发布了类似的问题,但我不明白如何利用给定的答案.

-(IBAction)insert {
    UIAlertView* dialog = [[UIAlertView alloc] init];
    [dialog setDelegate:self];
    [dialog setTitle:@"Enter Name"];
    [dialog setMessage:@" "];
    [dialog addButtonWithTitle:@"Cancel"];
    [dialog addButtonWithTitle:@"OK"];

    UITextField *nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)];
    [nameField setBackgroundColor:[UIColor whiteColor]];
    [dialog addSubview:nameField];
    [dialog show];

    [data addObject:[nameField text]];
    [mainTableView reloadData];
Run Code Online (Sandbox Code Playgroud)

然而,我的应用程序崩溃,因为它说我试图在索引0处插入一个零对象.我做错了什么?

编辑:好吧我想我错过了处理alertview的方法.所以我发现了这个:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
    NSString *buttonTitle=[alertView buttonTitleAtIndex:buttonIndex];
    if([buttonTitle isEqualToString:@"Cancel"]) {
        return;
    }
    else if([buttonTitle isEqualToString:@"Ok"]) {
        [data addObject:nameField.text];

    }
Run Code Online (Sandbox Code Playgroud)

现在我只需要连接各个部分,但不知道如何.

iphone objective-c uialertview

17
推荐指数
2
解决办法
3万
查看次数

在iPhone上以编程方式制作音乐?

对于iPhone上的音频和音乐,或者在任何平台上,我都很天真.

说我想制作一个简单的钢琴应用程序 - 是否可以通过编程方式为每个键生成声音?

或者我是否必须为每个可能的声音提供一个.wav文件?

我想知道像GarageBand这样的程序如何能够提供如此多样化的声音 - 它是否可以为每种可能的声音提供文件?

或者有没有办法动态生成这些声音?

编辑:我发现这篇最精彩的文章描述了我想要做的事情,而这个家伙甚至有一个带小钢琴的示例项目,所有声音都是以编程方式生成的.

iphone audio cocoa-touch ios

16
推荐指数
1
解决办法
1360
查看次数

如何用动画取消隐藏视图

假设我在Xcode for iOS中有隐藏视图.现在,当我将视图设置为不隐藏(view.hidden = NO)时,我如何才能使它现在出现,但是有动画?

iphone xcode cocoa-touch

15
推荐指数
3
解决办法
2万
查看次数

获取PermanentID后,Core Data无法满足对象的错误

我从网络服务器获取数据,在一个名为的子私有背景上下文中处理它backgroundMOC.它是一个mainMOC链接到主UI的子节点,因此保存backgroundMOC触发器UI更改.它mainMOC是一个子节点,masterMOC它是一个绑定到持久存储的私有后台队列,因此保存在主节点上会保存到磁盘.

我现在做的是接收数据,创建新对象backgroundMOC,然后保存backgroundMOC(以便UI更新),保存mainMOC,(这样我几乎可以保存到磁盘),并保存masterMOC(这样我最终可以写入磁盘).问题是当对象通过提取的结果控制器出现在UI中时,objectId它仍然是临时的.

这会导致重复行问题,如果我从服务器收到相同的数据(偶然),我backgroundMOC不知道这个对象已经存在,因为它没有被分配永久ID,所以它创建了另一个对象.当我重新启动应用程序时,重复的对象消失了,所以我知道这只是id映射的问题.

所以我想我可能会尝试

[backgroundMOC obtainPermanentIDsForObjects:backgroundMOC.registeredObjects.allObjects error:nil];
Run Code Online (Sandbox Code Playgroud)

在保存之前(我在保存之后也尝试过).但是,由于某种原因,调用此行会引发异常:

CoreData无法解决...的错误

如果您有任何可能引导我朝正确方向发展的提示,请分享.谢谢

编辑:好的,所以最初我在backgroundMOC上调用了acquirePermanentIDsForObjects,后者是mainMOC的子节点,它是masterMOC的子节点.我切换它以便我获得mainMOC上的ID,它解决了我所有的问题(现在).我是不是应该在子环境中调用obtainPermIds?

iphone core-data objective-c ios

15
推荐指数
1
解决办法
1687
查看次数

React Routes - 身体css标签上的不同样式

我的React应用程序上有两条路由:/a/b.

对于/ a,我希望bodycss标签有一个background-color: red;.

对于/ b,我希望bodycss标签有一个background-color: blue;.

这两个组件ab生活在不同的.JSX文件,都导入自己的main.scss文件,该文件定义了自己各自的body background-color.

但是,由于整个应用程序被编译到body标记中,似乎存在冲突,并且body两个路径中只有一个标记受到尊重.

  <body>
    <script src="bundle.js" type="text/javascript"></script>
  </body>
Run Code Online (Sandbox Code Playgroud)

我希望它在body标签而不仅仅是容器div上的原因是background-color当我滚动页面边界(Mac和iOS上的弹跳效果)时我希望它是可见的.

这样做的正确方法是什么?

css sass reactjs

15
推荐指数
1
解决办法
4247
查看次数

对象数组的深层副本

我想使用构造函数制作对象数组的深层副本.

public class PositionList {
    private Position[] data = new Position[0];

public PositionList(PositionList other, boolean deepCopy) {
        if (deepCopy){
            size=other.getSize();
            data=new Position[other.data.length];
            for (int i=0;i<data.length;i++){
            data[i]=other.data[i];
            }
Run Code Online (Sandbox Code Playgroud)

但是,由于某种原因,我上面所说的不起作用.我有运行的自动化测试,并且它没有通过这些测试.所以这里有一个错误,我不确定它是什么.

java arrays constructor copy object

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

为什么我的崩溃报告没有象征意义?

我正在使用Xcode 4.3.1.崩溃发生在我的设备上,所以我连接它并打开管理器,转到我的设备日志,找到崩溃报告,这里是它的内容:

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread:  0

Last Exception Backtrace:
0   CoreFoundation                  0x3514488f __exceptionPreprocess + 163
1   libobjc.A.dylib                 0x3656b259 objc_exception_throw + 33
2   CoreFoundation                  0x35144789 +[NSException raise:format:] + 1
3   CoreFoundation                  0x351447ab +[NSException raise:format:] + 35
4   CoreFoundation                  0x350b168b -[__NSCFDictionary setObject:forKey:] + 235
5   myapp                           0x0015b4a7 0xe8000 + 472231
6   myapp                           0x0018add1 0xe8000 + 667089
7   myapp                           0x0013cd5b 0xe8000 + 347483
8   Foundation                      0x30ffb60d __NSFireTimer + 145
9   CoreFoundation                  0x35118a33 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 15
10 …
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c ios

13
推荐指数
2
解决办法
6446
查看次数

iOS的国家/地区拨号代码列表

我正在查看国家列表及其拨号代码,可能是plist文件或Objective-C字典.

我知道PHP中有一些列表如下:https: //gist.github.com/260468 如果涉及到它我将手动移植它,但这很容易出错.

objective-c ios

13
推荐指数
5
解决办法
2万
查看次数

WhatsApp如何知道我的联系人的国家/地区代码?

我在美国,电话号码如下:

没有国家代码:123-456-7890

国家/地区代码:+1 123-456-7890

现在,根据维基百科,意大利的电话号码有这种格式:

347 xxxxxxx(来自意大利境内)

所以这可能看起来像美国的数字:347-123-4567

当我打开WhatsApp上的所有联系人时,它会自动添加国家/地区代码,因此,如果我有美国手机123-456-7890,则会添加+1.但它怎么知道它是美国的号码呢?它可能是任何东西.

我猜测它使用我当前的区域设置或时区来确定我的位置,以及任何没有国家/地区代码的电话号码,只需添加当前用户的国家/地区代码即可.但是我在我的iPhone中更改了我的区域设置,它仍然能够猜出该号码所属的国家/地区.

知道怎么可能吗?

更新:此外,我只是尝试添加一个新的电话号码,而我的手机处于飞机模式,而我的区域设置设置为意大利语,而我的时区设置为意大利罗马,它仍然知道我放了一个美国号码,所以它可以可能连接到服务器以获取此信息.

iphone timezone objective-c ios

13
推荐指数
2
解决办法
5万
查看次数

可选类型'Int?'的值 没有打开; 你的意思是用'!' 要么 '?'?

我有以下型号:

class Word: NSManagedObject {
    @NSManaged var definitions: NSSet
}
Run Code Online (Sandbox Code Playgroud)

然后,在我的一个视图控制器中,我有以下属性:

var word: Word?
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试这样做:

func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int
{
     return self.word?.definitions.count
}
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

可选类型'Int?'的值 没有打开; 你的意思是用'!' 要么 '?'?

根据文档,可选链接调用的值也是可选的,因此.count应返回可选的Int.所以我尝试打开它:

return self.word?.definitions.count!
Run Code Online (Sandbox Code Playgroud)

但这仍然会导致同样的错误.这样做的正确方法是什么?

swift

13
推荐指数
1
解决办法
2万
查看次数