gpt4 book ai didi

java - Android O 固定快捷方式 - CREATE_SHORTCUT Intent 过滤器

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:36:11 24 4
gpt4 key购买 nike

In the documentation对于 Android O 中新的“固定快捷方式”功能,他们提到“您还可以创建一个专门的 Activity 来帮助用户创建快捷方式,完成自定义选项和确认按钮”。

我尝试按照文档进行操作,但是当我尝试创建一个新的快捷方式时,我只看到了默认对话框,而不是我的 Activity 。

这是 list 中的声明:

    <activity android:name=".ShortcutActivity">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
</intent-filter>
</activity>

附言
在文档中,他们还在 Gmail 应用程序中展示了一个示例——我如何进入该屏幕?想看流量但是没找到。

最佳答案

您必须创建一个新的 Activity 作为对话框,然后您可以在该对话框上添加您想要的任何选项,并根据需要使用 addShortcut 方法进行处理。

我尝试了该代码来添加和删除动态快捷方式并且它有效。

AndroidManifest.xml

<activity android:name=".DialogActivity"
android:excludeFromRecents="true"
android:theme="@style/Theme.AppCompat.Dialog"
>
...
</activity>

DialogActivity.java

public class DialogActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dialog);
this.setFinishOnTouchOutside(false);
findViewById(R.id.add_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addShortcut();
}
});
findViewById(R.id.cancel_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
...
}

activity_dialog.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:id="@+id/activity_dialog"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.metax.myapplication.DialogActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Do you want to add shortcut?"/>

<Button
android:id="@+id/cancel_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_alignParentStart="true"
android:text="No thanks"/>
<Button
android:id="@+id/add_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_alignParentEnd="true"
android:text="Add me"/>
</RelativeLayout>

关于java - Android O 固定快捷方式 - CREATE_SHORTCUT Intent 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46662186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com