appのビルド中に、「count」という名前の複数のメソッドが見つかりましたが、結果が一致せず、パラメータータイプまたは属性エラーが発生しています。アプリは32ビットで問題なく動作していました。 Appleガイドライン に従って64ビットに変更しました。私はこれを参照しました Link ですが、助けはありません。
私はシミュレータ上の複数のデバイスでアプリをテストしました。 32ビットでは問題なく動作しますが、64ビットではエラーが表示されます。なぜそうなのですか。
-(void)serviceSuccessFulForPatientSelect:(id)response
{
[self hideOverlay];
if([response isKindOfClass:[NSArray class]])
{
if([response count]>0)
{
if(1)
{
...
}
}
}
[refillDetailTable reloadData];
}
ソリューション1:宣言しましたビューコントローラのプロパティとしてカウント。名前をCountValueに変更すると、問題は解決しました。
ソリューション2:適切なデータ型に型キャストできます。
if([(NSArray *) response count]>0) {
...
}
私の場合、[response count]
を含む場所が1000か所あったため、この解決策は実行できませんでした。
if([response count]>0)
response
はid
です。このエラーは、異なるタイプを返すcount
という複数のメソッドがあることを示唆しています-int
とNSInteger
64ビットでは異なりますが、32ビットでは同じです。
修正するには、キャストを実行します。
if([(NSArray*)response count]>0)
countという名前のプロパティはありますか?