は、私は、次の構造を有する:ランタイムにFormattedStringを持つボタンのテキストの色を変更するにはどうすればよいですか?
<Button class="but_border but_text bluebg" flexGrow="1" #lol2>
<FormattedString>
<Span text="" fontFamily="FontAwesome, fontawesome-webfont" fontSize="20"></Span>
<Span text=" Identifícate con Facebook" ></Span>
</FormattedString>
</Button>
私にこの与える:
をそして、それは確かに私はそれが望むように見えます。しかし、私のボタンには、背景色とフォント色の変更を加えたCSSの状態が必要です。
.but {
color: white;
}
.but:pressed {
color: red;
}
を私はFormattedStringを使用いけない場合、それは動作しますが、私がしなければ、それだけで最初のレンダリングに取り組んでいます:
この使用してCSSをこの方法を行うには些細なことする必要があります。その後、それはどんなイベントでも変更されません。あるいはクラスやXMLやCSSのプロパティを手で変更しても、レンダリングは決して更新されません。
私はAndroidのボタン内のすべてのテキストを大文字にすることを避けるために私が知っている唯一の方法であるため、FormattedStringを使用しています。私はそれを避けるためにテキストデコレータを使用しようとしましたが、私は大文字小文字、またはTitleizeすることしかできませんが、FormattedStringを使用しない限り、テキストをちょうどそのまま残すことはできません!
私はFormattedStringを使用していますもう一つは、テキストに異なるフォントを埋め込むことです(私はこの例でFontAwesomeアイコンを使用しています)
私がFormattedStringにIDを渡しても、私のtsコードからそれを参照することはできますが、そのプロパティに対して行う変更はレンダリングには影響しません。 私はこのような私のXML更新した場合: ' ' は... –
を続け、その後、私のクラスにあると: '@ViewChild( 'lol')lol:ElementRef; togglePress = function(args:TouchGestureEventData){ console.log(args.view + ':' + args.action); let lol = this.lol.nativeElement; lol.foregroundColor = 'red'; } ' 私はイベントを発生させますが、レンダリングの変更はまったくありません... –