[英]How to implement toast overlay in Google TV
我正在为Google TV创建一个应用程序。 我正在尝试在广播的顶部创建自定义吐司覆盖。
我创建了自定义吐司,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_toast_layout_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFF"
android:orientation="horizontal"
android:padding="5dp" >
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#000" />
</LinearLayout>
并在googleTV应用程序的视图中实现它:
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.main,
(ViewGroup) findViewById(R.id.custom_toast_layout_id));
// Toast...
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
我的问题是我如何使该应用程序在应用程序中显示正常的广播信息,以便在观看过程中触发此覆盖图?
任何帮助,不胜感激。
以下是一些方法:
您可以创建一个应用程序,用户每次要在直播中看到这种吐司之前必须明确启动。 该应用程序将进行透明的活动,然后显示吐司或仅显示带有信息的视图。 您的活动将阻止所有其他与广播的互动,例如更改频道。
从服务中调用吐司或透明活动。 看看这个开源的应用程序: https : //github.com/entertailion/Overlay-for-GTV
除了使用Toast或透明视图,您还可以使用Android支持的系统警报窗口,将视图覆盖在其他任何活动之上。 您的清单中需要“ android.permission.SYSTEM_ALERT_WINDOW”,并且需要将窗口类型设置为“ WindowManager.LayoutParams.TYPE_SYSTEM_ALERT”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.