小编C.J*_*hns的帖子

在objective-c中使用B​​OOL变量时发出警告

我试图将我的BOOL变量初始化为YES但是它给了我这个警告..不太确定该怎么做..它似乎仍然工作正常但只是想知道如何摆脱警告.

我像这样在标题中初始化变量

//.H

BOOL *removeActivityIndicator;
//..
@property (nonatomic, assign) BOOL *removeActivityIndicator;
Run Code Online (Sandbox Code Playgroud)

然后我尝试将它设置为YES(这也是我收到警告的地方)

self.removeActivityIndicator = YES;
Run Code Online (Sandbox Code Playgroud)

警告说:

不兼容的整数到指针转换将'BOOL'(又名'signed char')传递给'BOOL*'类型的参数(又名'signed char*')

iphone boolean objective-c ios

7
推荐指数
1
解决办法
8272
查看次数

nsurlconnection异步请求

首先,问题是失败的问题..如果你只是想看看它们是什么,请跳到这篇文章的底部,你会看到它们以粗体显示..更多细节,那么你可以阅读这篇文章的其余部分......

我只是试图解决我的NSURLConnection,以便它的工作顺利,我理解这一点.互联网上的异步连接缺乏示例/教程,或者没有任何我能找到的解释说明除了获得连接和运行之外的任何深度,除了工作之后,它似乎非常简单.希望这个问题可以填补我觉得其他用户的空白.

因此,在我的.h文件中,我导入了基础头并声明了接收或缺少接收数据所需的方法(错误等).

.H

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h> //add foundations
//.. other headers can be imported here

@interface MyViewController: UITableViewController { 

//Im not setting any delegates to access the methods because Is all happening in the same 
//place so I just use the key word 'self' when accessing the methods declared below
//I'm not sure if this is the best thing to do but I wasn't able to get my head around declaring the delegate or how it would help …
Run Code Online (Sandbox Code Playgroud)

iphone nsurlconnection nsurlrequest nsurlcache ios

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

将nsdata对象组合到nsmutabledata对象中

我很确定我必须使用NSMutableData来解决这个问题,因为我将多次访问该对象并在我拥有它之后添加每个数据部分.

我面临的问题是我想要创建一个大的NSMutableData对象,该对象将由附加到可变数据对象末尾的几个小NSData对象创建.

我尝试了以下内容.

编辑://此方法现在可以工作,并将数据附加到它的假设.

- (void) constructRequest
{
    NSData * protocolInt = [self addProtocolVersion];
    NSMutableData * myMutableData = [[NSMutableData alloc] init];

    NSData *first_data = [self addProSig]; //nsdata type
    NSData *second_data = [self addAct]; //nsdata type
    [myMutableData appendData:first_data];
    [myMutableData appendData:second_data];
    //etc


    [protocolInt writeToFile:@"/Users/imac/Desktop/_dataDump.dat" atomically:YES];

}
Run Code Online (Sandbox Code Playgroud)

首先,我甚至不确定这是否是附加数据的正确方法,只是我看到了几个类似的例子.主要问题是这两行

NSMutableData *first_data = [self addProSig]; //nsdata type
        NSMutableData *second_data = [self addAct]; //nsdata type
Run Code Online (Sandbox Code Playgroud)

我在两条线上都有警告

不兼容的指针类型初始化'NSMutableData*_strong'wuth一个'NSData*'类型的表达式

任何帮助将不胜感激,也可能更好的解决方案,我正在使用,如果有任何.

iphone nsdata nsmutabledata ios

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

目标c常数类

我有一些常量编码到几个不同的viewController和NSObject类atm.我工作的其中一个人说我应该将它们放入自己的类中(即常量类)

我想知道这种类型的设计的专业人士和内容是什么,如果它应该做什么,任何关于如何做的澄清将是伟大的.

例如,我只是创建一个新的NSObject类并在其中包含一堆#defines吗?然后,当我需要使用它们时,我只是继承我的常量类并使用此类中的常量,就像我将来自另一个类的任何其他方法或变量一样?

myclass.theConstant
Run Code Online (Sandbox Code Playgroud)

任何帮助都会有很大的帮助.

iphone const uiviewcontroller nsobject ios

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

如何使用indexpath值居中uitableview选择

我正在从子视图中保存indexPath选择并将其传递给具有委托的父视图.当我从主视图返回到我的子视图时,我将indexPath传回给它,并在tableviewcell的附件视图中向用户显示他们之前选择的单元格.

一个问题是,如果用户从一个相当大的列表中选择了一个单元格很难找到他们再次选择的单元格,那么他们想要改变它(因为他们犯了一个错误)

我想知道他们是否可以使用indexPath或类似的方法将以前选择的uitableview单元格置于屏幕中心?

更新::

这是一个图形视图,我想要实现的目标是让它更容易理解.

第一步:选择单元格然后转到子视图并选择要传递回主视图的单元格(值)(保存所选单元格的indexPath) 在此输入图像描述

第二步:用户要么改变他的选择,要么犯了错误,并选择他们选择的单元格以下的单元格...重复前面的步骤,但在视图的中心显示先前选择的单元格.

在此输入图像描述

iphone uitableview nsindexpath ios

5
推荐指数
1
解决办法
3212
查看次数

如何为我的第一个视图隐藏UINavigationBar

我想要隐藏UINavigationBar,它只为第一个视图自动加载导航项目,我想知道如何使这个工作.

我试着这样做

//RootViewController.m

#import "mydelegate.h" //-- this is where the view controller is initialized

//...

- (void)viewDidLoad
{
    [super viewDidLoad];
    navigationController *navController = [[navigationController alloc] init];
    [navigationController setNavigationBarHidden:YES animated:animated];
}

//.....
Run Code Online (Sandbox Code Playgroud)

但是我收到错误,因为我想我没有正确地从委托文件中调用navigationController,或者这是不可能像对待来自另一个类的方法那样调用它.

任何帮助将不胜感激.

iphone uinavigationbar uinavigationcontroller ios

4
推荐指数
2
解决办法
8406
查看次数

如何在选择单元格时设置accessoryType

我一直在试图弄清楚如何在选择单元格时将accessoryType设置为UITableViewCellAccessoryCheckmark,但我很难找到一个合适的例子.

如果你知道如何做到这一点,或者你可以告诉我一个很好的教程.

iphone accessorytype ios

4
推荐指数
1
解决办法
4713
查看次数

如何将NSArray拆分为按字母顺序排列的部分,以便与索引tableview一起使用

我有一个NSArray,我已经从我从数据库中获取的一些xml按字母顺序解析和排序.我现在想知道如何将此数组拆分为与tableview上的索引一起使用以便更快地搜索.

我的表格略有不同的地方在于它总是使用整个字母表,而且与大多数示例不同,我发现我使用的数据集每天都有很多变化.

所以我试图找出如何将排序的数组拆分为不总是相同的字母部分.

正如cocofu指出的那样,是的,我已经实现了sectionIndexTitlesForTableView,我现在正在尝试将我的nsarray拆分为多个部分,以便滚动与sectionIndexTitlesForTableView一起使用.

iphone uitableview ios

4
推荐指数
1
解决办法
6221
查看次数

如何根据tableviewcell选择将子视图的nsdictionary保存到主视图

我目前正在解析一些看起来像这样的xml

<Rows>
<Row MANUFACTURERID="76" MANUFACTURERNAME="Fondont" ISMANU="F" ISAUTO="F"/>
<Row MANUFACTURERID="18" MANUFACTURERNAME="Anti" ISMANU="T" ISAUTO="T"/>
</Rows>
Run Code Online (Sandbox Code Playgroud)

我解析它,以便有一个字典数组(每个字典都有行的四个值).

然后我将ManufacturerName传递给我的startSortingTheArray方法

if (dataSetToParse == @"ICMfg") // ICMfg is a string passed to this view from the parent view cell selection enabling me to pass different data sets to this view
    {
       //Filter results (ISAUTO = T)
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K like %@",@"ISAUTO",@"T"];
        NSArray *filteredArray = [myDataArray filteredArrayUsingPredicate:predicate];
        //Passes Manufacturer strigs over to startSortingtheArray method
        [self startSortingTheArray:[filteredArray valueForKey:@"MANUFACTURER"]];
    }
Run Code Online (Sandbox Code Playgroud)

因此,从这里将所有ManufacturerNames作为字符串数组发送到我的方法.然后我使用这个数组来设置我的所有section/index-scroller.下面的方法显示了我是如何做到这一点的.

//method to sort array and split …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview nsxmlparser ios

4
推荐指数
1
解决办法
437
查看次数

如何在目标c中使用bool变量

我目前正在尝试使用布尔值来检查事件发生的时间.但是我不确定如何在目标c中使用布尔值

继承人我在做什么.

//.H

BOOL *removeActivityIndicator;
//..
@property (nonatomic, assign) BOOL *removeActivityIndicator;
Run Code Online (Sandbox Code Playgroud)

//.m

if ([filteredArray count] == 0)
        {
            self.removeActivityIndicator = YES;
        }
        else if([filteredArray count] !=0)
        {
            tempArray = filteredArray;
        }
}
Run Code Online (Sandbox Code Playgroud)

所以我正在检查过滤后的数组是否没有值,如果是这样的情况那么我想停止我的UIActivityIndi​​cator那当前正在我的uitableview单元格中运行.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//...

//Stop ActivityIndicator if arrays have no values for the user
    if(indexPath.section == 0)
    {        
        if ((indexPath.row == 1) && (self.removeActivityIndicator == 0)) //problem
        {
            //Stop activity indicators
            //[activityView stopAnimating];
            cell.accessoryView = nil;//replaces activity indicator
        }
    }

//...
Run Code Online (Sandbox Code Playgroud)

我的问题发生在if参数..

(self.removeActivityIndicator …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c ios

4
推荐指数
1
解决办法
8544
查看次数