3

Androidのホーム画面ウィジェットを持ってTextViewいます..残念ながら、スタイリングに問題があります..

テキストに動的な (コードから変更された) 影を適用したいのですが、その方法がわかりません。レイアウトで影を設定することはできますが、コードで変更したい場合、RemoteView!でこれを行う方法はありません。

でこれを行うことができると思ったがSpannableString、有用なものが見つからない.. を使用するTextAppearanceSpanと、スタイルからのシャドウ属性が無視されます。SpannableStringさらに、 on aを使い始めた瞬間に、 :(TextViewに適用した影を無視し始めますTextView

それの何が問題なのですか?ここでの私の最善の行動は何ですか?

4

2 に答える 2

0

編集済み: カスタム ビューをそこで使用できないため、これはウィジェットでは機能しません。しかし、どこか別のリモートビューに設定しようとしている人にとっては、何らかの助けになるかもしれません.

http://code.google.com/p/android/issues/detail?id=10029を参照してください


これを行う方法は、設定したい各値のメソッドを使用して、ShadowyTextView と呼ばれるカスタム TextView を作成することです。

次に、次のようなものを書くだけです。

remoteViews.setInt(R.id.myShadowyText, "setShadowColor", someColor);

したがって、属性はリフレクションによって設定されます。

おそらく最もエレガントなソリューションではないかもしれませんが、これ以上のものは見つかりませんでした。

于 2015-01-14T06:00:22.997 に答える
-1

次のコードで試してください

TextView textHello = (TextView)findViewById(R.id.hello);
        textHello.setShadowLayer(
          5f,   //float radius
          10f,  //float dx
          10f,  //float dy 
          0xFFffffff //int color
          );
于 2011-06-22T09:13:12.340 に答える