0

これどうやってするの:

[wage setText:@""];
[hours setText:@""];
[grossPay setText:@""];
[taxes setText:@""];
[netPay setText:@""];

一行で?

4

4 に答える 4

4

一行でやらないでください。分かりやすいようにします。ブライアン・カーニハンを引用するには:

デバッグは、そもそもプログラムを書くよりも 2 倍難しいことは誰もが知っています。それで、あなたがそれを書くときにできる限り賢いなら、どうやってそれをデバッグするのでしょうか?

于 2012-02-03T05:21:20.297 に答える
2

これらすべてが KVC に準拠しており、同じ値を入れたい場合は、これらすべてを配列に入れてからテキストを設定できます。

[[NSArray arrayWithObjects:wage, hours, grossPay, taxes, netPay, nil] setValue:@"" forKey:@"text"];

とか、ホシさんのアイデアもいいですよね。(これも KVC 準拠が必要です)

非 KVC ソリューション:

[[NSArray arrayWithObjects:wage, hours, grossPay, taxes, netPay, nil] makeObjectsPerformSelector:@selector(setText:) withObject:@""];
于 2012-02-03T05:12:56.987 に答える
0

これについてはRob(+1)に同意しますが、楽しみのために答えます:

for (UILabel * at in [NSArray arrayWithObjects:wage, hours, grossPay, taxes, netPay, nil]) at.text = @"";

、、、、またはだった場合wage、これは失敗することに注意してください。hoursgrossPaytaxesnil

于 2012-02-03T05:30:05.313 に答える
0

次のようにモデル クラスを使用します。

@interface DbInfos : NSObject{
    NSString *wage;
    NSString *hours;
    NSString *grossPay;
    NSString *taxes;
    NSString *netPay;
}

@property(nonatomic,strong)NSString *wage;
@property(nonatomic,strong)NSString *hours;
@property(nonatomic,strong)NSString *grossPay;
@property(nonatomic,strong)NSString *taxes;
@property(nonatomic,strong)NSString *netPay;

-(id)initWithWage:(NSString *)newWage Hours:(NSString *)newHours GrossPay:(NSString *)newTaxes NetPay:(NSString *)newNetPay;
于 2012-02-03T05:23:35.053 に答える