有人可以指出我的for循环有什么问题吗?我试图通过UIImageViews循环使所有隐藏.所有子视图都是UIImageViews.提前致谢.
int i;
int num = [[self myView]subviews];
for (i=0; i<num; i++)
{
UIImageView *currentView = [self.tabber.subviews objectAtIndex:i];
currentView.hidden = YES;
}
Run Code Online (Sandbox Code Playgroud) 我正在崩溃,因为我的阵列被解除分配,但我不知道为什么或在哪里.该数组来自于这样的东西:
@implementation Sources
- (NSArray *)sourceArray{
NSMutableArray *array = [NSMutableArray array];
//fill array with objects
return (NSArray*)array;
}
@end
Run Code Online (Sandbox Code Playgroud)
然后,在tableview中,我有一个属性,我在其中覆盖getter,如下所示:
- (NSArray *)feedSourceList
{
if (!_sources) {
_feedSourceList = [_sourceList sourceArray];
}
return _sources;
}
Run Code Online (Sandbox Code Playgroud)
然后我像这样调用属性,这会导致崩溃:
- (NSInteger)tableView:(UITableView *)aTableView numberOfRowsInSection:(NSInteger)section
{
return [self.feedSourceList count];
}
Run Code Online (Sandbox Code Playgroud)
我不知道为什么数组被释放.这是自动释放池在某个我不知道的地方被耗尽了吗?保留这个阵列的正确方法是什么?
我制作了一个笑话应用程序,用户生成一个笑话,笑话将显示在UILabel中.然而,我试图随机化笑话节目,但我不想两次显示相同的笑话.请问你能告诉我怎么做到这一点.我正在使用下面的代码尝试这样做,但它似乎无法正常工作.
- (IBAction)generateNewJoke {
if (i < [jokeArray count]) {
i++;
[userDefaults setInteger:[userDefaults integerForKey:kNewIndex] forKey:kOldIndex];
int oldnumber = [userDefaults integerForKey:kOldIndex];
int newnumber = [userDefaults integerForKey:kNewIndex];
[answerLabel setText:@""];
[userDefaults setInteger:i forKey:kNewIndex];
if (oldnumber == newnumber) {
NSLog(@"they are the same");
[userDefaults setInteger:arc4random()%[jokeArray count] forKey:kNewIndex];
}
[jokeLabel setText:[jokeArray objectAtIndex:[userDefaults integerForKey:kNewIndex]]];
}
}
Run Code Online (Sandbox Code Playgroud) 我可以看看手机上是否有歌曲吗?这是为了我正在加载应用程序,所以我可以看看他们是否删除了这首歌.
我想让很多人尽快在他们的手机上测试我的应用程序.如果应用程序崩溃,他们向我发送错误报告的最佳方式是什么?
我有两个部分,希望它成为委托.
所以我有:
@interface RewriteViewController : UIViewController <MPMediaPickerControllerDelegate>
Run Code Online (Sandbox Code Playgroud)
这会导致错误,它说它需要是SKVocalizerDelegate.
如果我有:
@interface RewriteViewController : UIViewController <SKVocalizerDelegate>
Run Code Online (Sandbox Code Playgroud)
它说的是相同的MPMediaPickerControllerDelegate.
但是:
@interface RewriteViewController : UIViewController <MPMediaPickerControllerDelegate> <SKVocalizerDelegate>
Run Code Online (Sandbox Code Playgroud)
给了我很多错误.我怎样才能成为两者的代表呢?
假设我在屏幕上有一个标签和一个按钮.当用户按下按钮时,它会在已经存在的标签下方生成新标签,并且可以无限次地执行此操作.
我不需要代码来建立新职位.我只是想知道如何添加新标签?我可以用一堆与它相关的变量做同样的事情,比如说创建一些NSStrings吗?
我有一个简单的iphone项目,其中包含一个简单的xcdatamodel,它有一个实体,大约有3个属性.
我想知道是否有一种方法将属性编程方式添加到实体..也就是说,如果用户按下某种类型的"添加"按钮,一个简单的字符串属性添加到实体并保存..
如果这是不可能的,有人可能会指出我正确的方向..
AVAudioRecorder 允许录制外部音频。但是,我希望录制我的应用程序制作的音频(通过众多 AVAudioPlayers),这在 iPhone 上可行吗?
我在实现核心数据时遇到了这个错误.
我创建了一个实体'FlashCard',其属性为'question'和'answer'.这两个属性都是NSString类型.
在将新对象插入NSManaged Object后,我尝试设置2个属性,如下所示.
NSManagedObject *newCard = [NSEntityDescription insertNewObjectForEntityForName:@"FlashCard" inManagedObjectContext:self.managedObjectContext];
newCard.question = thisQuestion;
newCard.answer = thisAnswer;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试编译代码时,我遇到错误"请求成员'问题'在某些东西不是结构或联合'.我得到相同的错误newCard.answer行.
任何关于如何解决这个问题的建议非常感谢!
震
cocoa-touch ×10
objective-c ×9
iphone ×8
core-data ×2
ios ×2
core-audio ×1
delegates ×1
runtime ×1
xcdatamodel ×1