在Android上使用Snackbar而不改变主题

4

在Android上创建snackbar时,我遇到了以下错误:

"java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity"。

我不想改变我的活动主题为AppCompat,有没有一种方法可以在不更改主题的情况下使用snackbar呢?

1个回答

4

无论您使用的是appcompat-v7AppCompatActivityTheme.AppCompat等),还是不使用,您需要保持一致性。因此,如果您不打算使用Theme.AppCompat,请确保不要扩展AppCompatActivity

但是,设计支持库——官方Snackbar的来源——仅支持使用appcompat-v7的活动。如果您想要没有appcompat-v7的snackbar,则不能使用Design Support库。而是使用其他实现snackbar的方法。

我刚发布了一个,它提供了官方Snackbar的端口,可以在没有appcompat-v7的情况下工作,但只适用于具有21或更高minSdkVersion的项目。 这个库实现了一个适用于旧设备的snackbar,但该项目已经停止。可能会有其他的实现。

我明白了,你能否建议一种自定义实现应用内通知的方法,例如Snackbar? 我刚在这里问了这个问题:http://stackoverflow.com/questions/41531125/snackbar-lookalike-in-app-notifications-for-activities-not-using-appcompat-v7 - user7365614

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接