【问题标题】:Using Android support design library on custom view在自定义视图上使用 Android 支持设计库
【发布时间】:2016-02-07 14:37:32
【问题描述】:

我有一个自定义的RelativeLayout,并想在其中使用android 支持设计库(这样我就可以使用CoordinatorLayout)。我试过添加

android:theme="@style/Theme.AppCompat.Light"

但我仍然收到此错误:

Caused by: java.lang.IllegalArgumentException: You need to use a Theme.AppCompat theme (or descendant) with the design library.

这是否意味着我不能在自定义视图上使用它,只能在 Activity 内使用? 因为我不能在这里使用活动。我正在将此视图添加到 WindowManager。 非常感谢任何帮助。谢谢!

【问题讨论】:

  • 请复制您的自定义RelativeLayout代码。
  • 我认为这不是问题。它构造正确,就像here

标签: java android xml android-support-library android-support-design


【解决方案1】:

因为您要使用 WindowManager 添加视图并且需要兼容 Theme.AppCompat 的主题,所以您只需在调用 LayoutInflater 之前设置您的主题。 例如:setTheme(R.style.AppTheme); 它应该工作:)

【讨论】:

    【解决方案2】:

    就我而言,我需要在我的自定义键盘上添加一个android.support.design.widget.TabLayout。我解决了这个问题:

    override fun onCreate() {
        setTheme(R.style.AppTheme)
    
        super.onCreate()
    }
    

    【讨论】:

    • 请不要添加 "thanks" 作为答案。它们实际上并没有提供问题的答案,并且可能被未来的访问者视为噪音。相反,upvote answers 你喜欢。这样,问题的未来访问者将看到对该答案的更高投票数,并且回答者也将获得声誉积分奖励。见Why is voting important
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-17
    • 1970-01-01
    • 1970-01-01
    • 2015-10-02
    • 2016-07-16
    相关资源
    最近更新 更多