带有API 21的Snackbar

Blu*_*ngo 7 java eclipse android material-design android-design-library

我正在尝试在我的应用程序中实现新的Snackbars,但我不能.首先,我从这个SnackBarSampleActivity下载了zip文件.
我解压缩它然后我在Eclipse中导入它.现在我得到retrieving parent...了主题父母的错误styles.xml.
我改变它,android:Theme.Light错误消失了.我右键单击了项目并在Properties/Android中检查了isLibrary,我右键单击了我的应用程序,在Properties/Android中我添加了库.最后我粘贴代码以显示Snackbar但我得到一个错误,因为Snackbar cannot be resolved.
请有人帮帮我!我疯了,我做错了什么?

Gab*_*tti 40

使用新的设计支持库,您可以使用官方的SnackBar Widget.

只需将此依赖项添加到您的app -> build.gradle:

implementation 'com.android.support:design:28.0.0'
Run Code Online (Sandbox Code Playgroud)

并使用类似的东西:

Snackbar.make(view, "Snackbar", Snackbar.LENGTH_LONG).show();
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

完整的例子,在Kotlin

        val fab = findViewById(R.id.btn_signin) as Button
        fab.setOnClickListener(View.OnClickListener { view ->
            Snackbar.make(view, "FloatingActionButton is clicked", Snackbar.LENGTH_INDEFINITE)
                    .setAction("Action", null).show()
        })
Run Code Online (Sandbox Code Playgroud)


bji*_*ang 11

您应该尝试使用Android Studio,因为Eclipse的ADT插件不再处于活动开发阶段.

在Android Studio中,您只需要compile 'com.nispok:snackbar:2.6.1'build.gradle依赖项中添加一行,这样就可以了

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.2'
    compile 'com.nispok:snackbar:2.6.1'
}
Run Code Online (Sandbox Code Playgroud)

而已.


Jun*_*aid 6

如果您在Eclipse for Snackbar中遇到"未解决类型"问题,这对我有用.

右键单击Project-> BuildPath-> Configure Buildpath单击Libraries选项卡,然后单击Add external Libraries.

选择{adt}路径/ sdk/extras/android/support/design/libs选择android-support-design.jar,单击"打开"添加此库.

单击确定.

最终窗口