小编Luc*_*ges的帖子

工具栏覆盖并在状态栏上投射阴影

我在前Lollipop设备上使用AppCompat作为Material设计的后端.不知何故,支持toolbar覆盖status bar并在其上投下阴影,就像状态栏在工具栏后面一样.在我的Android 5.0.2手机上测试过.

在此输入图像描述

这是代码:

活动布局

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/base_root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/base_appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/PGTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/base_toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/PGTheme.PopupOverlay"/>

    </android.support.design.widget.AppBarLayout>

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

主题-V21

<style name="PGTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/base_color_2</item>
    <item name="colorPrimaryDark">@color/base_color_1</item>
    <item name="colorAccent">@color/base_color_2</item>
    <item name="android:colorButtonNormal">@color/base_color_2</item>
    <item name="android:textViewStyle">@style/PGTheme.TextView</item>
    <item name="android:editTextStyle">@style/PGTheme.EditText</item>
    <item name="android:buttonStyle">@style/PGTheme.Button</item>
</style>

<style name="PGTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

知道为什么会这样吗?

android android-appcompat material-design

5
推荐指数
1
解决办法
1559
查看次数

将项目拆分为模块

我一直在尝试根据其类/包职责将我的项目拆分为模块。不过,我似乎找不到任何传统架构来指导我。

基本上,我的课程细分如下

app (module)
- Application
- Activities
- Fragments
- Views
- Data
Run Code Online (Sandbox Code Playgroud)

活动和片段充当视图的控制器。我想做的是将所有内容分成以下内容:

app (module)
- Application
- Activities
- Fragments
dependencies {
    - ui
    - data
}

ui (module)
- Views

data (module)
- Data
Run Code Online (Sandbox Code Playgroud)

问题是app模块和data模块虽然很不一样,但是后端服务器端都依赖同一个第三方库。此外,活动和片段取决于数据模块。

将项目拆分为单独模块的良好做法是什么?在 Android/Android Studio/Gradle 中,是否可以有具有相同依赖项的不同模块?是否有可能有两个相互依赖的模块?

android gradle android-studio

0
推荐指数
1
解决办法
2548
查看次数