LoginSignup
0
0

More than 1 year has passed since last update.

GlanceのText ComposableでTextOverflow.Ellipsisを指定する方法

Posted at

概要

Jetpack GlanceはJetpack Compose1でApp Widgetsを作成できるフレームワークです。バージョンは2023年3月1日時点で1.0.0-alpha05になります。

GlanceのText Composable

GlanceのText Composableでは、overflowプロパティがありません。colorやfontSizeもTextStyleで指定します。

@Composable
fun Text(
    text: String,
    modifier: GlanceModifier = GlanceModifier,
    style: TextStyle? = null,
    maxLines: Int = Int.MAX_VALUE
): Unit

GlanceのText ComposableでのTextOverflow.Ellipsisの指定方法

1.0.0-alpha05の時点では、次のように maxLines を指定することで自動的にellipsisされるようになっていました。

Text(
    text = text,
    maxLines = 1,
)

まとめ

GlanceでのApp Widgets開発の体験はとても良かったです。一方通常のComposeと微妙に使い勝手が異なる点もあり、嵌るポイントにもなっています(α版なので今後変更があるかも)。

また、AndroidView ComposableのようにAndroidRemoteView Composableを使うと従来のRemoteViewと組み合わせてUIを構築することが可能です2。Glanceで実装が難しい場合、以前のようにlayout.xmlで実装することを検討しても良いでしょう。

参考資料

  1. 通常のComposeと全く同じではありません。packageがandroidx.glanceに分かれ、Textでも指定できるプロパティが異なるなど同じComposeでも微妙に使い勝手が異なります。ModiferもGlanceModifierですし、Brashを取れるbackgroundがGlanceModifierに無かったり、Textのoverflowプロパティが無いなど違いがあります。

  2. 既存のWidgetの資産を再利用できるのが良いポイント > AndroidRemoteView Composable

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0