2012-03-28 17 views
-2

ラベルのテキストを変更するにはどうすればよいですか?これは私が試みたものです。ラベルテキストを変更する

labelCheckBox.text = @"This is the new label"; 

labelCheckBoxのインタフェースビルダーでラベルを接続し、そのコンセントを作成しました。 Didloadでは、ラベルのテキストは変更されましたが、クラス内の別のメソッドでは新しい値はありません。ここに示されているよう

-(void)settext:(NSString*)newLabelText{ 

labelCheckBox.text = newLabelText; 
// labelCheckBox = [[UILabel alloc] init]; 
// labelCheckBox.text = @"This is the new label"; 

} 

私は別のクラスのメソッドを呼び出しています:

[New settext:@"All Transaction"]; 

'NewLabelText' の値のNSLogで、それを印刷した後である: "All Transaction"。しかし、私が 'LabelCheckBox.Text = NewLabelText'を割り当てると、 'LabelCheckBox.Text'、 という値が表示され、空になります。

+1

そのコードは正しいので、さらに情報を提供しないと誰もあなたを助けることができません! – Zalykr

+0

この 'UILabel'をプログラマチックまたはInterface Builderから作成していますか? –

+0

labelCheckBoxのInterface builderでラベルを接続し、そのコンセントを作成しましたか? –

答えて

3

まずIBを使用する場合は、UILabelのコンセントと接続を作成する必要があります。ラベル(コントロール+ドラッグ)からコントローラクラスの.hファイルにドラッグする最も簡単な方法です。それを.mファイルで合成します。これで、ラベルテキストを変更することができます。

+1

合成はXcodeによって自動的に追加されます。 – dasdom

1

ラベルテキストを設定する前に '表示'を読み込む必要があります。

0

iOSの開発では、アプリがクラッシュするのを防ぐために、Javascriptのような無音処理が行われることがあります。あなたがInterface BuilderでUILabelを作成し、それにIBOutletを設定した場合は、UILabelが作成された後にのみテキストを変更してください。 (すなわち、-viewDidLoadの後)。テキストの変更を設定する箇所にブレークポイントを設定し、UILabelを含むUIViewControllerのブレークポイントに-viewDidLoadを設定して、発生した呼び出しの順序を確認できます。コードの下

0

それは実際に動作するラベルのテキストを変更するには、このタイプscrollview使用の際にはタグ値で

for(UIView *views in ScrollViewMain.subviews) 
{ 
    UILabel *label = [views viewWithTag:[sender tag]+1000]; 
    label.text=str1; 
} 

をラベルのテキストを変更します。 ありがとう

関連する問題