我已经看过关于锁屏小部件的其他帖子。我知道4.2是拥有锁屏API的最新版本。
我的问题是我创建了一个xml:
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="294dip"
android:minHeight="72dip"
android:updatePeriodMillis="0"
android:initialLayout="@layout/keyguard"
android:widgetCategory="keyguard">
</appwidget-provider>
和布局:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/keyguard"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/black" >
<RelativeLayout
android:id="@+id/appwidget"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/controls"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center">
<ImageButton
android:id="@+id/control_play_pause"
android:layout_width="100dip"
android:layout_height="wrap_content"
android:background="@null"
android:src="@drawable/ic_media_play_dim"
android:paddingTop="1dip"
android:paddingBottom="1dip"
android:scaleType="centerInside" />
<ImageView
android:background="@android:color/white"
android:layout_width="1dip"
android:layout_height="20dip" />
<ImageButton
android:id="@+id/control_stop"
android:layout_width="100dip"
android:layout_height="wrap_content"
android:background="@null"
android:src="@drawable/ic_media_stop_dim"
android:paddingTop="1dip"
android:paddingBottom="1dip"
android:scaleType="centerInside" />
</LinearLayout>
</RelativeLayout>
</FrameLayout>
我对提供者并不完全清楚(但我已经制作了一个并将其添加到AndroidManifest.xml中),所以任何帮助都将受到赞赏。现在,我只想在锁定屏幕上显示该布局(只是一个简单的媒体播放器控件)。
谢谢!
答案 0 :(得分:1)
如果您只需要可自定义的媒体控制按钮,则可以使用RemoteControlClient自动将音乐控件发布到锁定屏幕。可以使用RemoteControlClient.setTransportControlFlags方法自定义控件,传入与要显示的按钮关联的标记。