带有API 21的Snackbar

时间:2014-12-15 16:41:02

标签: java android eclipse material-design android-design-library

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

6 个答案:

答案 0 :(得分:40)

使用新的Design Support Library,您可以使用官方SnackBar小工具。

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

即可
implementation 'com.android.support:design:28.0.0'

使用类似的东西:

Snackbar.make(view, "Snackbar", Snackbar.LENGTH_LONG).show();

enter image description here

完整示例,在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()
        })

答案 1 :(得分: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'
}

那就是它。

答案 2 :(得分:6)

如果您在Eclipse中面临 Snackbar 的“未解决类型”问题, 这对我有用。

右键单击Project-> BuildPath->配置Buildpath单击Libraries选项卡,然后单击Add external Libraries。

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

单击“确定”。

Final Window

答案 3 :(得分:1)

请将以下代码添加到 build.gradle 文件

implementation 'com.android.support:design:28.0.0'

然后单击立即同步按钮,它将起作用。

答案 4 :(得分:0)

对于Eclipse开发人员

  1. 按照github中的说明导入SnackBar项目
  2. 右键单击 java 文件夹,然后点击build path > add as source folder
  3. 添加以下行/更改SnackBar项目的AndroidManifest.xml,如下所示

    <uses-sdk android:minSdkVersion="7"
        android:targetSdkVersion="22"/>
    <application />
    

  4.   

    包= “com.nispok.snackbar”

    1. 将以下dependencies添加到SnackBar项目
    2.   

      android-support-v7-appcompat:21
        android-support-v7-recyclerview:21

      1. 最后在项目属性中将Project build target设置为API 22.
      2. 这将是适合你的,有一个很好的编码日......

答案 5 :(得分:0)

在依赖项内的build.gradle(模块:app)中添加它:

implementation 'com.android.support:design:28.0.0'

implementation 'com.dmitrymalkovich.android:material-design-dimens:1.4'

完整代码:

dependencies {
    implementation 'com.android.support:design:28.0.0'
}

dependencies {
    implementation 'com.dmitrymalkovich.android:material-design-dimens:1.4'
}