1
私はカスタム通知を作成しようとしています。Androidのカスタム通知が空です
不幸にも通知ジャスティが空になります。私はこれがどのように可能であるか理解できません。エラーはありませんnotificaitonは2つのアイコンが付いていてテキストはありません。
私はAPI 23と24について、両方で同じことを試しました。ここでは、結果の印刷画面である:ここで
は私のコードは次のとおりです。
MainActivity.java
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
showPreviousView();
}
}
public void customNotification() {
RemoteViews remoteViews = new RemoteViews(getPackageName(),
R.layout.custom_notification);
String strtitle = getString(R.string.customnotificationtitle);
String strtext = getString(R.string.customnotificationtext);
Intent intent = new Intent(this, MainActivity.class);
intent.putExtra("title", strtitle);
intent.putExtra("text", strtext);
PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder builder = (NotificationCompat.Builder) new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_play)
.setTicker(getString(R.string.customnotificationticker))
.setAutoCancel(true)
.setContentIntent(pIntent)
.setContent(remoteViews);
remoteViews.setImageViewResource(R.id.imagenotileft,R.drawable.ic_menu_camera);
remoteViews.setImageViewResource(R.id.imagenotiright,R.drawable.ic_menu_gallery);
remoteViews.setTextViewText(R.id.title,getString(R.string.customnotificationtitle));
remoteViews.setTextViewText(R.id.text,getString(R.string.customnotificationtext));
NotificationManager notificationmanager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationmanager.notify(0, builder.build());
}
string.xmlを
<resources>
<string name="app_name">The Music Player</string>
<string name="navigation_drawer_open">Open navigation drawer</string>
<string name="navigation_drawer_close">Close navigation drawer</string>
<string name="action_settings">Settings</string>
<string name="title_activity_browse">Browser</string>
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>
<string name="notificationtitle">Android Notification Tutorial</string>
<string name="notificationtext">Notification Text</string>
<string name="notificationticker">Notification Ticker</string>
<string name="customnotificationtitle">Android Notification Tutorial</string>
<string name="customnotificationtext">Custom Notification Text</string>
<string name="customnotificationticker">Custom Notification Ticker</string>
<string name="lbltitle">"Title : "</string>
<string name="lbltext">"Text : "</string>
<string name="notification">Notification</string>
<string name="customnotification">Custom Notification</string>
</resources>
custom_notification.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imagenotileft"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imagenotileft"
android:text="dayme son"/>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/title"
android:layout_toRightOf="@+id/imagenotileft" />
<ImageView
android:id="@+id/imagenotiright"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:padding="10dp" />
</RelativeLayout>
EDIT
MainActivity.java
public void customNotification() {
RemoteViews remoteViews = new RemoteViews(getPackageName(),
R.layout.custom_notification);
Intent intent = new Intent(this, MainActivity.class);
intent.putExtra("title", "title");
intent.putExtra("text", "txt");
PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder builder = (NotificationCompat.Builder) new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_play)
.setTicker(getString(R.string.customnotificationticker))
.setAutoCancel(true)
.setContentIntent(pIntent)
.setContent(remoteViews);
remoteViews.setImageViewResource(R.id.imagenotileft,R.drawable.ic_menu_camera);
remoteViews.setImageViewResource(R.id.imagenotiright,R.drawable.ic_menu_gallery);
NotificationManager notificationmanager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationmanager.notify(0, builder.build());
}
custom_notification
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imagenotileft"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imagenotileft"
android:text="same text"
android:textColor="#00FFFF"/>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/title"
android:layout_toRightOf="@+id/imagenotileft"
android:text="this ia text"
android:textColor="#00FFFF"/>
<ImageView
android:id="@+id/imagenotiright"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:padding="10dp" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="this is a try"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/text"
android:layout_toEndOf="@+id/text"
android:layout_marginLeft="17dp"
android:layout_marginStart="17dp" />
</RelativeLayout>
RESULT
うわー、強い目;) –
私は私のポストと私のコードをedtiedしかし、私はまだ結果を得る。テキストの色を変更してボタンを追加しようとしました。 –
実際には、私はボタンを見ることができますが、テキストは表示されません。 –