4

我刚刚从Github实现了 FirebaseUI ,它运行良好。我遇到的问题是我想在调用新 Activity 时更改布局,因为它看起来不太好。下面是

截屏

我知道我们可以将 Activity 的主题更改为:

startActivityForResult(
    AuthUI.getInstance(this).createSignInIntentBuilder()
        // ...
        .setTheme(R.style.AppThemeWithActionBar)
        .build());

但是无论如何我们可以改变被调用活动的布局吗?

4

1 回答 1

-1

有很多方法可以更改布局,它们提供了对样式的覆盖。所以添加这样的样式,例如:

 <style name="AppThemeWithActionBar" parent="FirebaseUI">
        <item name="android:windowBackground">@drawable/firebaseui_bg_image</item>
        <item name="windowActionBar">true</item>
        <item name="windowNoTitle">true</item>
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="colorButtonNormal">@color/colorAccent</item>
        <item name="colorControlNormal">@color/white</item>
        <item name="colorControlActivated">@color/white</item>
        <item name="colorControlHighlight">@color/white</item>
        <item name="android:textColorTertiary">@color/white</item>
    </style>

    <style name="FirebaseUI.Text">
        <item name="android:layout_width">match_parent</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:textColor">@android:color/white</item>
    </style>

    <style name="FirebaseUI.CountrySpinner">
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:textColor">@color/white</item>
    </style>

    <style name="FirebaseUI.TextInputEditText.EmailField">
        <item name="android:inputType">textEmailAddress</item>
        <item name="android:textColor">@color/white</item>
    </style>

    <style name="FirebaseUI.TextInputEditText">
        <item name="android:textSize">18sp</item>
        <item name="android:layout_width">match_parent</item>
        <item name="android:layout_height">wrap_content</item>

    </style>

    <style name="FirebaseUI.TextInputEditText.PhoneField">
        <item name="android:layout_width">match_parent</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:textColor">@color/white</item>
    </style>

运行程序并查看布局已更改。同样在android studio中单击FirebaseUI,同时按住命令键或alt键可能在Windows中(不确定),您可以看到所有覆盖。

于 2018-03-19T04:15:33.627 回答