- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有谁知道如何向 Android TV 应用程序添加启动画面?让我感到困难的是,主要 Activity 应该有 Theme.Leanback 才能在 google play 中被接受,并且要有启动画面,你需要你自己的风格/主题。那么该怎么做呢?
最佳答案
您可以自定义 Leanback 的 OnboardingFragment稍微将其显示为启动画面。 OnboardingFragment
允许您添加入职步骤,但如果您不需要它们,您可以设置 setLogoResourceId
里面onCreateView
.
请注意,如果您将页数保持为零,它会崩溃,因此请将页数保持为 1 且启动持续时间大于 LOGO_SPLASH_PAUSE_DURATION_MS = 1333
否则将显示带有“开始”按钮的页面。
我们的想法是最初使用只有启动画面的入职 fragment ,然后随着应用程序的增长添加入职步骤。
入职 fragment
public class OnboardingFragment extends android.support.v17.leanback.app.OnboardingFragment {
private static final long SPLASH_DURATION_MS = 2000;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = super.onCreateView(inflater, container, savedInstanceState);
if (view != null) {
view.setBackgroundColor(Color.RED);
}
setLogoResourceId(R.drawable.logo);
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
onFinishFragment();
}
};
handler.postDelayed(runnable, SPLASH_DURATION_MS);
return view;
}
@Override
protected void onFinishFragment() {
super.onFinishFragment();
// Our onboarding is done
// Let's go back to the MainActivity
getActivity().finish();
}
@Override
protected int getPageCount() {
return 1;
}
@Override
protected String getPageTitle(int pageIndex) {
return null;
}
@Override
protected String getPageDescription(int pageIndex) {
return null;
}
@Nullable
@Override
protected View onCreateBackgroundView(LayoutInflater inflater, ViewGroup container) {
return null;
}
@Nullable
@Override
protected View onCreateContentView(LayoutInflater inflater, ViewGroup container) {
return null;
}
}
入职 Activity
/*
* OnboardingActivity for OnboardingFragment
*/
public class OnboardingActivity extends Activity {
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.onboarding);
}
}
onboarding.xml
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/onboarding_fragment"
android:name="com.example.android.tvleanback.ui.OnboardingFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
声明OnboardingActivity
里面AndroidManifest
<activity android:name=".ui.OnboardingActivity"
android:enabled="true"
android:exported="true"
android:theme="@style/Theme.Leanback.Onboarding" />
开始OnboardingActivity
来自 MainActivity's
onCreate
关于android - 如何将启动画面添加到我的 Android 电视应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39301584/
我目前正在开发一个 Android 电视应用程序,但无法弄清楚如何更改当我在播放视频时离开该应用程序时出现的正在播放的卡片的图标。 这link显示我需要使用 uri 格式的字符串设置 MediaMet
[注意:这是对 earlier question 的重写这被认为是不合适的和封闭的。] 我需要对电视 (TV) 视频进行一些像素级分析。这种分析的确切性质并不相关,但它基本上涉及查看电视视频每一帧的每
我长期使用 mumudvb 和一张 dvb-t pci 卡在我的网络上流式传输电视 channel 。这工作正常,但我最近添加了另一个不如其他播放器强大的播放器,所以我想重新编码视频流。 这是我的输入
我正在尝试为 android 电视制作一个应用程序,它将使用电视 Remote 上的以下按钮:up、down、left,向右,居中/输入,home,返回。 我需要参加哪些类(class)/Activi
Paypal Rest Api 不适用于 Tizen tv,但它在 rest 客户端上运行良好。Tizen tv 中既不调用成功函数也不调用失败函数。 更改了 paypal 以外的 url,它的工作正
我想访问以下当前可用推送通知的数量: ,这里是 Android TV 模拟器图像.. 那么我怎样才能读取那个数字呢? 编辑:我不想设置任何东西。 最佳答案 您可以使用 NotificationList
我知道如何在显示键盘时在 android 移动设备中进行检测,但是如何在 android 电视或火电视上做到这一点? 最佳答案 尝试这个 fun isKeyBoardVisible() = ViewC
我有一台 3D 电视,并且觉得如果我不至少尝试让它显示我自己创作的漂亮 3D 图像,我就是在逃避自己的责任(作为极客)! 我之前已经完成了非常基本的 OpenGL 编程,因此我了解所涉及的概念 - 假
我想通过 PC 上的 Java 程序控制我的 DLNA 电视。特别是,我想: 发现局域网中是否有电视 检查它当前是否开启(第一步) 稍后向它发送一些命令(例如关闭) 我相信,我需要实现数字媒体 Con
我看到很多帖子都在展示如何使用 adb connect 连接到 Android 设备但就我而言,它不起作用... unable to connect to :5555: cannot connect
我想从一个 java 程序发送以下命令,但并不过分阅读响应。知道我该怎么做吗 下面的命令通过 CEC 命令打开电视 echo "standby 0000" | cec-client -d 1 -s "
我有一台每天自动启动的独立公共(public)信息亭电脑。它连接到高清电视,有时检测不到。我必须亲自去 PC,转到屏幕分辨率,然后按检测它的工作原理。 我的问题是如何知道我希望它显示的显示器是否已在代
如何在 Erlang/OTP v17 中查看 mnesia 表。我尝试使用 tv:start() 但外壳返回 undefined function。看起来 tv 模块不再存在。用什么来代替它? 最佳答
我目前遇到了 Facebook 实时 API 的问题。 我希望订阅用户个人资料中的一些内容,包括他们在音乐、书籍、电视和电影类别中的“喜欢”。 当我通过 FQL 和 Graph 查询时,我得到了正确的
我是一名优秀的程序员,十分优秀!