2016-07-07 156 views
18

我想在我的android应用中实现简单的通知。我reffering这个developer guide如何在Android Studio中导入android.support.v7.app.NotificationCompat.Builder类

但收到此错误信息:

Incompatible types. 
Required: android.support.v7app.NotificationCompat.Builder 
Found: android.support.v4.app.Notification.Compat.Builder 

Error Message screenshot

对于下面的代码片段:

​​

这里是我的进口:

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.support.v7.app.NotificationCompat; 
import android.view.View; 
import android.widget.Button; 

我认为正确的NotificationCompat类是进口的。我正在使用Android Studio v2.1.2进行开发。请帮我解决这个错误信息。我对android编程和java很陌生。

回答

22

这些建设者方法的返回值被返回NotificationCompat.Builder的V4版本。 v7 NotificationCompat.Builder扩展了v4版本,主要是继承了它的方法,这意味着返回类型不会改变。

文档:

如果您需要的V7版本(支持NotificationCompat.MediaStyle的),只投它。

NotificationCompat.Builder mBuilder = (android.support.v7.app.NotificationCompat.Builder) new NotificationCompat.Builder(this) 
        .setSmallIcon(R.drawable.ic_launcher) 
        .setContentTitle("My notification") 
        .setContentText("Hello World!"); 

如果不是,请将您的导入交换为使用v4版本。

12

更换

import android.support.v7.app.NotificationCompat; 

import android.support.v4.app.NotificationCompat; 
+0

从支持库26到27这引起了一点头痛。这个解决方案钉了它 – miroslavign

相关问题